java - 如何处理正则表达式中的 ' and "字符?

标签 java regex

我正在尝试使用此正则表达式来匹配某些短语

String k = "{'hello','hi'}";
Pattern pattern = Pattern.compile("(\\{)(((([A-Za-z0-9_()\'\"\\.\\+\\-\\*/])+((,)?([A-Za-z0-9_()\\+\\-\\*/]))*)|(\\w)))?(\\})");


Matcher match = pattern.matcher(k);
System.out.println(match.matches());

它可以与我指定的所有字符配合使用,这意味着它与 {1,2}{1+3,method()} 等匹配。 ... 仅当我得到带有 " char 或 ' 的字符串(例如 "{"hello","hi"}" )时,正则表达式似乎不会无法识别这个字符。

有什么特殊的方法可以捕捉它们吗?

最佳答案

您可以使用\example\' = ' 和\"= "转义字符

我宁愿使用 [^}] 和 [^,],这可以获得除特定字符之外的所有内容。

关于java - 如何处理正则表达式中的 ' and "字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24291894/

相关文章:

java - 使用 jdom 创建 xml,如何设置独立的 ="no"属性

php - 如何在忽略撇号的同时匹配不完整的单引号?

java - Java 中的正则表达式环视构造 : advise on optimization needed

regex - 我如何使用正则表达式 "inverse match"?

REGEX 非捕获组正在使用 TCL 捕获

java - 正则表达式字符串不包含?

java - 调试递归方法来查找单词是否存在于滑板中

java - 如何用java编写一个打印机打印程序

java - hibernate中的cascade和inverse有什么区别,它们是干什么用的?

java - 如何阻止 Java 缩短 large double?