正则表达式学的不好,照别人代码写了一个UBB代码,可是有问题
dim objRegExp
Set objRegExp=new RegExp
objRegExp.IgnoreCase =true
objRegExp.Global=True
objRegExp.Pattern="(\[EMAIL\])(\S+\@\S+?)(\[\/EMAIL\])"
str= objRegExp.Replace(str,"<img src=""images/icon_oe.gif"" width=""16"" height=""16"" hspace=""3""><a href=""mailto:$2"">$2</a>")
objRegExp.Pattern="(\[EMAIL=(\S+\@\S+?)\])(.[^\[]*)(\[\/EMAIL\])"
str= objRegExp.Replace(str,"<img src=""images/icon_oe.gif"" width=""16"" height=""16"" hspace=""3""><a href=""mailto:$2"">$3</a>")
在转换单个MAIL地址的时候没问题,可在转换一连串的MAIL地址时它为什么只认第一个和最后一个UBB代码?比如[mail]abc@abc.com[/mail]是好的,在转[mail]abc@abc.com[/mail][mail]abc@abc.com[/mail][mail]abc@abc.com[/mail][mail]abc@abc.com[/mail]的时候,程序只认第一个[mail]和最后一个[/mail],当中它统统成地址了