我将从一个例子开始:
假设以下输入(假设\ n是换行符):
MY STRING content1 \n content1; my string content2 \n \n content2; my string content3 content3 \n content3
正如您所看到的,前两部分以&#39 ;;'结尾。性格,但最后一个没有。 以下正则表达式模式匹配将获取第一部分,但不是第二部分:
Matcher m = Pattern.compile("(MY STRING(.*?)\\;)|(my string(.*?)\\;)").matcher(str);
结果是:
MY STRING content1 \n content1;
my string content2 \n \n content2;
但我没有得到:
my string content3 content3 \n content3
有没有办法匹配以";"结尾的字符串?或者当整个字符串结束时(如最后一部分)?