Java 引号内的数字-Regex
我想要一个与此匹配的正则表达式:word,“number”,word 其中数字大约为:100000.00 到目前为止,我有这个,但我不知道如何检查一个数字周围的引号Java 引号内的数字-Regex,java,regex,Java,Regex,我想要一个与此匹配的正则表达式:word,“number”,word 其中数字大约为:100000.00 到目前为止,我有这个,但我不知道如何检查一个数字周围的引号 (w+)(,)\\(d+)(,)(d+)(.)(d+)(,)\\(w+)(,) 只需添加带转义字符的引号,如下所示: \\w+,\\“\\d+,\\d+\.\\d+\\”,\\w+ 我删除了最后一个coma…因为它不是模式的一部分。如果您的数字后面可以有几个(或没有)带树型数字的分号,或者精度部分可以是可选的,您可以使用此正则表达
(w+)(,)\\(d+)(,)(d+)(.)(d+)(,)\\(w+)(,)
只需添加带转义字符的引号,如下所示: \\w+,\\“\\d+,\\d+\.\\d+\\”,\\w+
我删除了最后一个coma…因为它不是模式的一部分。如果您的数字后面可以有几个(或没有)带树型数字的分号,或者精度部分可以是可选的,您可以使用此正则表达式:
String regex=
"\\w+,\"" + // word, semicolon, quote mark
"\\d{1,3}" + // number in form d, dd, or ddd
"(,\\d{3})*" + // optional (* means 0 or more times) part of numbers in format ",ddd"
"(\\.\\d{2})?" +// optional (? means 0 or 1 time) part ".dd"
"\",\\w+"; // quote mark, semicolon, word
这将接受:
-precision part is optional
d
d.dd
-number of semicolons can change, but every semicolon MUST have 3 digits after it
dd,ddd
d,ddd,ddd
d,ddd,ddd.dd
在正则表达式中添加引号?是一个与
100000.00
完全相同的数字,或者它可以是例如:1
10.0
0.12345
1000000.12
?谢谢,我是正则表达式的新手,不知道必须转义引号。@user1155344 Quote不在正则表达式中,因此你不必转义它。但是它们在Java中是特殊的字符,所以为了能够将其作为普通字符在字符串中使用,您需要使用\“
,而不是\”
来转义它的特殊含义。除此之外,这个答案还解决了您的单词“100000.00”,单词问题:)