繁体   English   中英

用正则表达式匹配引号“

[英]Match a quotation mark " with regex

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

texthere("othertext")

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

我试图做的是( s是一个String ):

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

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

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

这意味着\\"部分未被识别为" 我该如何解决?

您只是忘记了转义()

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

他们没有逃脱,却是一个俘虏小组。

这里的转义字符\\用于转义已经为正则表达式模式保留的字符

例如

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

样例代码:

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM