不包含某个字符串的正则表达式怎么写?

xunua 2004-01-30 01:59:01
请问,不包含某个字符串的正则表达式怎么写?
...全文
782 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
cloudchen 2004-01-30
  • 打赏
  • 举报
回复
<SCRIPT LANGUAGE="VBScript">
str = "<tr><td width=77%><a href=xx.asp>标题1</a><a href=xxx.asp><a href=xx.asp><img src=../pic.gif></a></td></tr><tr><td width=77%><a href=xx.asp>标题2</a><a href=xxx.asp><a href=xxxxxx.asp><img src=../pic.gif></a></td></tr>"

result = reg_match_all("<tr><td width=77%>.*?</td></tr>",str)

for i = 0 to ubound(result)
alert result(i)
next

function reg_match_all(patrn,strng)
Dim regEx,Matches,i,aReturn()
Set regEx = New regExp
regEx.Pattern = patrn
regEx.IgnoreCase = False
regEx.Global = True
Set Matches = regEx.Execute(strng)
Redim aReturn(Matches.Count-1)
For i = 0 To Matches.Count-1
aReturn(i) = Matches(i).value
Next
Set Matches = nothing
Set regEx = nothing
reg_match_all = aReturn
end function
</SCRIPT>
nik_Amis 2004-01-30
  • 打赏
  • 举报
回复
up
纪俊 2004-01-30
  • 打赏
  • 举报
回复
**************

为同C注释一样,其中的分隔符如多于一个字符时,则编写正则表达式就要困难许多。例
如串集合b a. . .(没有a b). . . a b(用b a. . . ab 代替C的分隔符/ * . . . * /,这是因为星号,有时还有
前斜杠要求特殊处理的元字符)。不能简单地写作:
b a (~( a b ) ) * a b
由于“非”运算通常限制为只能是单个字符而不能使用字符串。可尝试用~a、~b和~( a | b )为
~( a b )写出一个定义来,但这却没有多大用处。其中的一个解是:
b * ( a *~( a | b ) b * ) * a *
然而这很难读取(且难证明是正确的)。因此,C注释的正则表达式是如此之难以至于在实际
中几乎从未编写过。实际上,这种情况在真正的扫描程序中经常是通过特殊办法解决的,本章
后面将会提到它。

***************
结合上边的例子你可以得到点启发
LANBAgaga 2004-01-30
  • 打赏
  • 举报
回复
顶,接分!
xunua 2004-01-30
  • 打赏
  • 举报
回复
是这样的,我想用match来得到一个数组
一个字符串可能是
<tr><td width=77%><a href=xx.asp>标题1</a><a href=xxx.asp><a href=xx.asp><img src=../pic.gif></a></td></tr><tr><td width=77%><a href=xx.asp>标题2</a><a href=xxx.asp><a href=xxxxxx.asp><img src=../pic.gif></a></td></tr>
我要得到多个以<tr><td width=77%>开头,以</td></tr>结束的字符串
yjgx007 2004-01-30
  • 打赏
  • 举报
回复
var b = /(hello)+/g.test("adfdsfsdhellodfasdfsd");
alert(b); // 值为true表示包含hello,反之
cloudchen 2004-01-30
  • 打赏
  • 举报
回复
对了,这个没必要用正则吧

Instr(str,"hello") = 0
蛋高8 2004-01-30
  • 打赏
  • 举报
回复
举个例子好么
loveweb 2004-01-30
  • 打赏
  • 举报
回复
说错
loveweb 2004-01-30
  • 打赏
  • 举报
回复
[^a]是包含a吧
cloudchen 2004-01-30
  • 打赏
  • 举报
回复
有点复杂

/h(?=ello)/g

这个是判断是否包含一个hello

用test方法的话要取反一下结果
用match方法的话,没有找到匹配为不包含hello


xunua 2004-01-30
  • 打赏
  • 举报
回复
补充,不好意思,没说清楚,是不包含一个字符串,如"hello",不是单个字符
TrueAndFalse 2004-01-30
  • 打赏
  • 举报
回复
又发错,该死
TrueAndFalse 2004-01-30
  • 打赏
  • 举报
回复
羡慕中.......
cloudchen 2004-01-30
  • 打赏
  • 举报
回复
[^a]

不包含a

28,407

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧