【发布时间】:2012-11-14 17:24:30
【问题描述】:
我是 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*=.*?");
【问题讨论】:
-
删除
^或在其后添加#。 -
# this is a new property是字符串的一部分吗?还是评论? -
最后不需要勉强匹配。只需删除
?并添加$即可。顺便说一句,如果您使用的是Matcher.matches,那么锚点是隐式的,您不需要放置它们。