匹配引号“与正则表达式

时间:2014-05-25 16:51:47

标签: java regex

我需要将以下字符串与正则表达式匹配:

texthere("othertext")

字符串前后可能有一些空格。

我尝试做的是这个(sString):

s.matches("\\s*\\w*(\"\\w*\")\\s*");

然而,这不起作用。然后我尝试了几件事,直到我发现以下内容确实有效:

s.matches("\\s*\\w*(.*\\w*.*)\\s*");

这意味着\"部分无法识别为"。我该如何解决这个问题?

2 个答案:

答案 0 :(得分:3)

你只是忘了逃避()

s.matches("\\s*\\w*\\(\"\\w*\"\\)\\s*");

没有逃脱,他们是一个捕获组织。

答案 1 :(得分:0)

这里使用转义字符\来转义已为正则表达式格式保留的字符

例如

. * ? + ( ) [ ] $ ^ { }

示例代码:

Pattern p = Pattern.compile("(\\(\"\\s*\\w*\\s*\"\\))");
Matcher m = p.matcher("texthere(\"entry\")");
if(m.find()) {
    System.out.println("found");
}
相关问题