帮忙看看如下的asp正则表达式

来源:百度知道 编辑:UC知道 时间:2024/05/27 10:02:42
我想替换以alt=开头以空白字符结尾(第一次出现空白)的一段代码比如
alt=这是图片
写了如下表达式

RegEx.Pattern = " alt=.*\s"

请问这样写规则对不对啊?我试了一下好像不行,请高手指点一下!

var rep=function (){
var reg=/(<img[^>]*?) alt=[ ]*(?:"[^"]*?"|'[^']*?']|[^ ]*)([^>]*?>)/g;
var str="$1$2";
return function(s){
return s.replace(reg,str);
}
}();
这是一个javascript程序,可以满足要求,ASP默认的vbscript我想你能够写得出来.
alt=一旦出现,就必须遇到非空格字符才能结尾,否则它可能吞噬掉后面的属性,另外alt=和具体值之间可以随便加空格,而且如果用"或'引起来,里面也可以加空格.下面的alt写法:
alt= name="1" 结果name="1",错误
alt= 11 结果11.
alt= "1 1" 结果1 1.
alt='' 结果为空白
等价的vbscript为RegExp.pattern="(<img[^>]*?) alt=[ ]*(?:""[^""]*?""|'[^']*?']|[^ ]*)([^>]*?>)"
global=true.
用方法regexp.replace(string,"$1$2")

alt=.\s

Dim ResultString As String
Dim myRegExp As RegExp
Set myRegExp = New RegExp
myRegExp.Global = True
myRegExp.Pattern = "alt=.*? "
ResultString = myRegExp.Replace(SubjectS