Java:如何在给定的String中转义所有正则表达式元字符?

时间:2017-09-06 22:36:01

标签: java regex

我正在寻找Java中的实用程序方法,它将转义给定String中的所有正则表达式元字符。

我想转换一下:

foo.bar(baz)

进入这个:

foo\.bar\(baz\)

这样我就可以获取任何示例字符串并将其转换为正则表达式友好搜索模式。当然必须存在,但我似乎找不到任何东西。

Pattern.quote(String s)提供类似于我需要的东西,但不是完全相同的功能。)

1 个答案:

答案 0 :(得分:0)

Pattern.quote(String s) 完全你想要的东西。

致电Pattern.quote("foo.bar(baz)")会返回"\Qfoo.bar(baz)\E",其与模式"foo\.bar\(baz\)"完全相同。