正则表达式匹配可选的'+'符号后跟任何单词

时间:2013-05-06 07:31:53

标签: java regex

在Java中我想使用正则表达式匹配一个字符串,该字符串可能以或不以加号开头,然后包含任何单词。  喜欢+ adm,adm两者都应该匹配。

我试过了[\\+?\\w\./]+,但它没有用。

1 个答案:

答案 0 :(得分:1)

您需要提供一个文字+后跟?量词(表示“零或其中一个”),然后是您想要的字符类用于“单词”。您可能还需要一个捕获组。所有这些都在the documentation中解释。


重新编辑:

  

我尝试了[\\+?\\w\./]+,但它无效。

你不希望[]中的所有内容,因为它表示一个字符类。要创建捕获组,请使用(),而不是[]。因此,可能想要new Pattern("(\\+?\\w+)"):一个可选的文字+后跟一个或多个单词字符,所有这些都在捕获组中。或者没有捕获组:new Pattern("\\+?\\w+")(我显示new Pattern位,所以很明显这是在字符串文字中,因此转义反斜杠.Java 真的需要一个文字正则表达式。) < / p>