我是 Java 新手。请帮助我使用 Java 正则表达式来匹配模式并检索值。 我需要匹配以下模式:
\# someproperty=somevalue // this is a new property
\#someproperty=somevalue // this is a new property
我必须匹配上述模式(可能包含空格),并且需要检索 "someproperty"
和 "somevalue"
。
我尝试使用下面的模式,但它只匹配 someproperty=somevalue
,开头没有 "#"
。请帮帮我。
Pattern propertyKeyPattern = Pattern.compile("^\\s*(\\S+?)\\s*=.*?");
最佳答案
如果你想匹配整个字符串并查找模式,例如“\# someproperty =some value
”。
尝试正则表达式
^\\#\s*(\S+?)\s*=(.*)$
作为 Java 字符串,它是
"^\\\\#\\s*(\\S+?)\\s*=(.*)$"
字符串\# someproperty = a some value
的匹配结果为
matches() = Yes
find() = Yes
group(0) = \# someproperty = a some value
group(1) = someproperty
group(2) = a some value
关于Java 正则表达式来匹配模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13578326/