这是我的代码,它适用于-
,但不适用于^
,我知道原因,但是我不知道解决方案。
这段代码有效,并给我“这里”:
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修饰符的行的开头。此类符号(\.[]{}()*+-?^$|
)必须在其前面加上\\
进行转义。