日期:2014-05-19  浏览次数:20814 次

关于匹配<script>...</script>之间的怪问题,想知道错误原因..分不够再加!
匹配内容:   <script> Function </script>

匹配格式: <script[^> ]*> [^ </script> ]* </script>


这里有一个奇怪的问题,就是,在 <script> 和 </script> 中写入少于4个字母,或者字母加数字混合就可以通过(字母在数字混合,如果前四个字符都是字母,也会报匹配错误)。如果纯字母的话,多于4个字母,则匹配错误,请问,这是怎么回事,望高手解答。。分不够   开帖再加!!!!

------解决方案--------------------
[^ </script> ]

???有这种语法么?


<script.*?> .*? </script>
------解决方案--------------------
修正一下
<script[^> ]*?> [\s\S]*? </script>

使用方括号 [ ] 包含一系列字符,能够匹配其中任意一个字符。用 [^ ] 包含一系列字符,则能够匹配其中字符之外的任意一个字符。同样的道理,虽然可以匹配其中任意一个,但是只能是一个,不是多个。