【发布时间】:2012-10-30 23:10:28
【问题描述】:
我正在尝试匹配这样的模式:
TR @(任意数量的单词字符都放在这里):
所以模式以 TR 开头,然后有一个空格,然后有 @,然后有任何字符,并以 : 结束
这是我的正则表达式:Pattern p = Pattern.compile("TR\\s@[\\w]+:");
它正在工作,例如会失败:
TR @abcnews:
我认为我的错误在于空格。
【问题讨论】:
-
这当然不是错误的根源,但
\\w周围的[]是多余的。 -
您的正则表达式与您的示例字符串匹配得很好。你有什么问题?
-
您的正则表达式也不完全符合您的描述:它不仅匹配“TR”后的单个空格,还匹配任何空白字符(空格、制表符、回车、换行、换页) ,或垂直制表符)。如果您确实需要空格,可以使用文字空格 (
' ')。
标签: java regex whitespace