我正在尝试编写一个可以在两个单词之间获取字符串的REGEX。
这是代码,
Pattern MY_PATTERN = Pattern.compile("/\\x22(.*?)/\\x22");
Matcher m = MY_PATTERN.matcher("sasaa \\x22 kjhkjhk \\x22,sasas");
while (m.find()) {
String s = m.group(1);
System.out.println("Tocken:"+s);
}
我正在尝试获取kjhkjhk,但匹配器未返回任何内容,请告诉我我做错了什么。
最佳答案
Pattern.compile(“ \\\\ x22(。*?)\\\\ x22”);
您必须在Patterns中用另一个反斜杠转义反斜杠。由于反斜杠必须已经在所有Java字符串中首先被另一个反斜杠转义(就像您在输入字符串中所做的那样),因此总共必须有4个。