这是我的代码,它适用于-,但不适用于^,我知道原因,但是我不知道解决方案。

这段代码有效,并给我“这里”:

String patternString = "(.*)--(.*)";

Pattern r = Pattern.compile(patternString);
Matcher m = r.matcher("here--asdfasdfasdfasdfasdfasdfasfd");


这段代码没有给我“这里”:

String patternString = "(.*)^^(.*)";

Pattern r = Pattern.compile(patternString);
Matcher m = r.matcher("here^^asdfasdfasdfasdfasdfasdfasfd");

最佳答案

^替换为\\^,这是一个特殊符号,表示未启用MULTILINE修饰符的行的开头。此类符号(\.[]{}()*+-?^$|)必须在其前面加上\\进行转义。

10-01 14:16