如何在给定字符串中获取\“字符串的regEx

时间:2019-03-18 19:12:12

标签: java

我们需要像这样:I \“ THIS IS TEST [1] \”用于数据:I \“ THIS IS TEST [1] \”-插入Redshift中。

但是仅当给定字符串中有\“时,才需要执行上述操作,因此我正在搜索如何识别给定字符串中的\”,并使用regEx尝试过,但是没有运气。您能在这里建议如何检查字符串是否有\“,以便找到匹配项时,我将替换全部(” \“”,“ \\”“);

谢谢!

1 个答案:

答案 0 :(得分:0)

要检查字符串是否包含字符串“”,必须首先通过在正则表达式中添加“ \”来从字面上匹配字符“ \”,然后再通过添加“ \”来匹配“字符”。

正则表达式的末尾是\\“,并且经过测试以匹配您在https://regex101.com/上提供的字符串

快速测试:

String regex = "\\\"";
Pattern pattern = Pattern.compile(regex);
String toTest = "hi there \". Do I match?";
boolean found = pattern.matcher(toTest).find();
System.out.println("Boolean value for whether pattern matches toTest: "  + found);

输出:“模式是否与toTest匹配的布尔值:true”

发现为真后,只需运行您的replaceAll命令,如下所示:

String#replaceAll(regex, "new value");



注意:\“只是一个”。 \\“将匹配\”。 \\\“将匹配\”。每次您想匹配其他\时,只需在正则表达式中添加\\
-或者,如果您想将其他“ add \”匹配至正则表达式