-1

我正在尝试匹配如下字符串:

"§{characters.characters}"
"§{characters_characters}"
"§{characters_characters.characters}"

ETC

我这样做了:

Pattern.compile("\\§\\{[a-zA-Z]+([_\\.][a-zA-Z]+)*\\}")

但它根本不起作用。任何人都知道为什么?

如果我Pattern.compile("\\§\\{([a-zA-Z]+)([_\\.][a-zA-Z]+)*\\}")只输入“字符”之类的字符串就可以了。但是也不明白为什么...

4

1 回答 1

3

匹配您的测试字符串

[a-zA-Z]+([_\\.][a-zA-Z]+)*

工作得很好,\\§\\{并且\\}不是您的测试字符串中的字符,所以它们不匹配,您的正则表达式正在寻找类似的东西

\§\{characters_characters.characters\} 

[a-zA-Z]+([_\\.][a-zA-Z]+)*http://regexr.com?325e8上查看实际操作

\\§\\{([a-zA-Z]+)([_\\.][a-zA-Z]+)*\\}http://regexr.com?325ee _


编辑

根据您的评论,§{([a-zA-Z]+)([_\\.][a-zA-Z]+)*}应该这样做http://regexr.com?325gp

于 2012-09-14T13:13:34.247 回答