我正在使用正则表达式来获取包含引号的字符串值。在下面的例子中,我想把value summary键作为“Here is”summary“。目前我只能得到”Here is“作为下面程序的输出结果。我希望避免所有在双引号之间的双引号。 。正则表达式获取包含引号的字符串
String in = "summary = \"Here is \"summary\"";
Pattern p = Pattern.compile("'(.*?)'|\"(.*?)[^\\\"]+\"");
Matcher m = p.matcher(in);
while(m.find()) {
System.out.println(m.group());
}
感谢所有帮助
使用贪婪匹配:'模式p = Pattern.compile( “ '(*)' | \”(*)\ “”);' –
它是否正确输入,而包含三个'\''? – MohaMad
贪婪的工作也很好。谢谢Wiktor。 – AAjit