这个正则 适用于 在一段字符串中 匹配 关键字A到某个关键字B的值,且可以多次匹配(即不贪婪匹配)
这里同理 可以改成 匹配关键字A到 含有关键字B 含有关键字C等等直至结尾关键字X的出现为止的匹配内容
这个正则思路 就是用 以A开头,中间不包含结尾B(假设无其他中间匹配值的需求),然后结尾B
下面例子:匹配字符串 “<p>aaaa</p><p>bbbb</p><p>cccc</p>” 中“<p”开头“/p>”结尾的字符串
正则就是 /<p((?!<\/p>).)*(<\/p>)/g
拆分解释下
/<p 匹配<p开头 这里没有加^在开头故不要求匹配的字符串以<p开头
((?!<\/p>).)*匹配任意多个值但不能包含/p>
(<\/p>)匹配/p> 这里没有加$符号故不要求匹配的字符串需要/p>结尾
/g 多次进行匹配
这里关键点就在于第二段的匹配任意多个值但不能包含结尾关键词的那部分,根据这个思路可以衍生出其他类似的正则需求