java - 正则表达式:如果我想在给定模式中找到 "\"和 "s",我需要做什么?

标签 java regex

我知道\s 有助于查找空白字符,但是我需要什么才能在给定字符串中查找“\”和“s”?

两者:

Pattern p = Pattern.compile("[s\]"); 

并且,

Pattern p = Pattern.compile("[\s]");

给出非法转义字符错误。

最佳答案

您需要再次转义 \,以将其解析为文字反斜杠字符:

Pattern p = Pattern.compile("[s\\\\]");

请注意,我使用了 \\\\ 而不仅仅是 \\,因为 \\s 实际上会转换为 \s 在模式中,它将查找空白字符。

您还可以阅读此内容 behaviour here .

<小时/>

基于您的recent comment ,您也不需要字符集。

Pattern p = Pattern.compile("\\\\s");

关于java - 正则表达式:如果我想在给定模式中找到 "\"和 "s",我需要做什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39933654/

相关文章:

java - android ViewFlipper - 具有异步图像加载的图像幻灯片

java - 是否可以使用 selenium web 驱动程序保存 adobe pdf 文件并一键构建 Jenkins

java - 在 Websphere 7 中使用 Hibernate 最新版本

正则表达式帮助,如何使表达式的顺序无关紧要?

javascript - 允许和阻止正则表达式中的某些字符?

java - 正则表达式或拆分以在 Java 中获取数据

java - 如何使jOOQ引用保留关键字的表名?

java - 使用java打开新选项卡

python - 使用正则表达式拆分标题和内容

php正则表达式从字符串中获取第一个URL