主题:  关于正则的问题

GHL

职务:普通成员
等级:1
金币:0.0
发贴:15
#12004/10/26 10:49:32
想在一段代码中除去<script ...... /script>, <head>...</head>,<%.....%>等代码块

re.Pattern = "<head>([\s\S]*)<\/head>"
t = re.Replace(t,"")
re.Pattern = "<script([\s\S]*)<\/script>"
t = re.Replace(t,"")


用这种方式,结果大部分内容都被除掉了,如:

<script>....</script>
<b>hahahahhaa</b>
<script>....</script>
<br>


此代码经过处理后,只剩下<br>了……
但我希望只除去Js部分...

还有,不知道怎么过滤<%....%>代码块?

须为Vbs. 谢谢!



我是南瓜

职务:普通成员
等级:1
金币:0.0
发贴:21
#22004/10/26 12:16:19
正则表达式是这样的
/<\/?\s*[(script)|(head)|\%]+\s*[^>]*>/



GHL

职务:普通成员
等级:1
金币:0.0
发贴:15
#32004/10/26 13:19:31
这个好像只过滤掉了<script <head>等标记,并没有除去整块的内容哦……



我是南瓜

职务:普通成员
等级:1
金币:0.0
发贴:21
#42004/10/26 13:22:58
要去掉整块的内容?看我发的那个正则表达式的指导吧,比较难做的,呵呵



GHL

职务:普通成员
等级:1
金币:0.0
发贴:15
#52004/10/26 22:38:03
此问题已经得到解决:

<(script|meta|%)[\s\S]*?\/(script|meta|%)>

谢谢关注过的朋友!:)