【发布时间】:2013-10-17 09:51:00
【问题描述】:
我正在尝试从包含非元字符 - (%, &) 和元字符 - ([, ], {, },|) 的字符串形成正则表达式模式。
问题是,我想(如何)识别任何可能是 Java 模式元字符的字符并使用 "\\" 对其进行转义,然后我可以用正则表达式元字符 .* 或 @ 替换一些非元字符987654325@
例如输入字符串 = "%abc&xy[z,p)"
第一步输出(我需要帮助来识别和转义所有元字符)-“%abc&xy\\[z,p\\)”
第二个 setp 输出(我将在其中进行自定义字符替换(此处无需帮助))-“.*abc.+\\[z,p\\)”
附言- 我不认为Pattern.quote() 或Pattern.Literal 是这里的答案。到目前为止,我看到的唯一选择是拥有这些元字符的映射并检查每个字符。
【问题讨论】:
-
你能给我们一个未转义和转义字符串的例子吗?
-
我理解示例请求,但不明白为什么问题不明显。无论如何,感谢 Dirk 的建议。这可能行得通!
-
@axiopisty 如果您认为问题还不够清楚,请告诉我,否则请撤消您的操作。