4,008
社区成员
发帖
与我相关
我的任务
分享
content="<form action=""?action=1""></form><form action=""test.asp""></form><form action=""/test.asp""></form><form action=""../test.asp""></form><form action=""http://www.xxx.net.cn/test.asp""></form>"
'共5种情况,现要求替换成如下这种
content="<form action=""http://www.xxx.org.cn/?action=1""></form><form action=""http://www.xxx.org.cn/test.asp""></form><form action=""http://www.xxx.org.cn/test.asp""></form><form action=""http://www.xxx.org.cn/../test.asp""></form><form action=""http://www.xxx.org.cn""></form>"
content="<form action=""?action=1""></form><form action=""test.asp""></form><form action=""/test.asp""></form><form action=""../test.asp""></form><form action=""http://www.xxx.net.cn/test.asp""></form>"
'共5种情况,现要求替换成如下这种
'content="<form action=""http://www.xxx.org.cn/?action=1""></form><form action=""http://www.xxx.org.cn/test.asp""></form><form action=""http://www.xxx.org.cn/test.asp""></form><form action=""http://www.xxx.org.cn/../test.asp""></form><form action=""http://www.xxx.org.cn""></form>"
' 本人测试成功( 环境win2003sp2, WSH-5.6 ), 执行了三次替换:
'1. 替换 http:// 开头的:
content=xReplace(content, "action=""http:\/\/.*?""", "action=""http://www.xxx.org.cn""")
'2. 替换非 http:// 开头的:
content=xReplace(content, "action=""((?!http:\/\/).*?)""", "action=""http://www.xxx.org.cn/$1""")
'3. 修复路径中的双斜杠 ( //test ) 字符:
content=xReplace(content, "action=""http:\/\/(.*?)\/\/", "action=""http://$1/")
msgbox content
Private Function xReplace(txt,exp,str)
set regex=new regexp
regex.pattern=exp
regex.ignorecase=true
'regex.MultiLine = false '低版本WSH不兼容此选项
regex.global=true
xReplace=regex.Replace(txt,str)
End Function
Private Function xTest(exp,str)
set regex=new regexp
regex.pattern=exp
regex.ignorecase=true
'regex.MultiLine = false '低版本WSH不兼容此选项
regex.global=true
xTest=regex.test(str)
End Function
var x=document.forms;
for (var i=0;i<x.length;i++){
if (/^http/.test(x[i].getAttribute('action'))) {x[i].setAttribute('action', 'http://www.xxx.org.cn');} else {
x[i].setAttribute('action', 'http://www.xxx.org.cn/'+x[i].getAttribute('action'));
}
}
'貌似替换一下就满足前4条
content=Replace(content,"action=""","action=""http://www.xxx.org.cn/"))
'1
<form action=""?action=1"">
变成
<form action=""http://www.xxx.org.cn/?action=1"">
'2
<form action=""test.asp""></form>
变成
<form action=""http://www.xxx.org.cn/test.asp""></form>
'3
<form action=""/test.asp"">
变成
<form action=""http://www.xxx.org.cn/test.asp""></form>
'4
<form action=""../test.asp""></form>
变成
<form action=""http://www.xxx.org.cn/../test.asp""></form>
'5
<form action=""http://www.xxx.net.cn/test.asp""></form>
变成
<form action=""http://www.xxx.org.cn""></form>