Php 还有一个-正则表达式匹配*不';包含一个单词

Php 还有一个-正则表达式匹配*不';包含一个单词,php,regex,preg-match,Php,Regex,Preg Match,我有如下输入,其中有两个脚本标记,第二个脚本标记具有src属性,其中我需要检查wrapperId={wrapper\u id}是否存在- <script type="text/javascript"> var blah; </script><script id="bleh" type="text/javascript" src="//domain/test.js?siteid=270606&testmode=0&banner360=1&ban

我有如下输入,其中有两个脚本标记,第二个脚本标记具有src属性,其中我需要检查
wrapperId={wrapper\u id}
是否存在-

<script type="text/javascript"> var blah; </script><script id="bleh" type="text/javascript" src="//domain/test.js?siteid=270606&testmode=0&banner360=1&banner=0&placementid=0&tp=3&wrapperId={wrapper_id}" > </script>
var-blah;
以下是我迄今为止准备的正则表达式-

<script(.*?)(?!<\/script>)(.*?)wrapperId={wrapper_id}(.*?)<\/script>

我正在尝试匹配不包含结束脚本标记()的脚本标记

在您的示例中,有一个结束标记。用于匹配html的正则表达式通常不是一个好主意。无效HTML的正则表达式会让你头疼

假设一个结束标记与您的示例类似,请尝试:

<script(.*?)<\/script><script(.*?)wrapperId={wrapper_id}(.*?)<\/script>

我建议使用xml解析器。