请问:
"select *from users where id='"&userid&"' "
语句中的‘“什么意思呀? 我直接写变量名userid不就得了嘛,干嘛那么麻烦呀!
2.
replace(request("email"),"'",""")
这语句有什么用呀?‘ “不一回事吗?
3.
replace(zuoye,"<br>","vbcrlf")
这又怎么回事呢?
chr(10),chr(13),vbcrlf
这几个相关概念老是分不清,请详细指点,先谢了!
现在语句:
zuoye=request.form("zuoye") '从表单中<textarea> 中提取作业
zuoye=replace(zuoye,"br",vbcrlf)
zuoye=replace(zuoye,chr(34),"'")
zuoye=replace(zuoye,"'",""")
这后面的两个语句一起表什么意思呀?
chr(34)="吗?
第一句‘变”,第二句双“变’,有什么意义呀?最后不都是”了吗,那前一句replace不是多余吗!?
多重替换(也叫多重过滤)的写法
zuoye=request.form("zuoye") '从表单中<textarea> 中提取作业
zuoye=replace(zuoye,"br",vbcrlf)
zuoye=replace(zuoye,chr(34),"'")
zuoye=replace(zuoye,"'",""")
这样写是在做连续替换操作,因为replace一次只能替换一种字符串中的关键字符,多次执行就可以替换多种字符串关键字,这种写法很常用,不过这么写的确很死板,增加一个关键字就得多写一次替换语句。把这个用循环做比这样写省事
比如
Dim KStr(2)
Dim TStr(2)
Dim i
KStr(0)="br"
KStr(1)=chr(34)
KStr(2)="'"
TStr(0)=vbcrlf
TStr(1)="'"
TStr(2)="""
For i=0 To Ubound(KStr)
zuoye=replace(zuoye,KStr(i),TStr(i))
Next
Dim KStr(2)
Dim TStr(2)
Dim i
KStr(0)="<br>"
KStr(1)=chr(34)
KStr(2)="'"
TStr(0)=vbcrlf
TStr(1)="'"
TStr(2)="""
For i=0 To Ubound(KStr)
zuoye=replace(zuoye,KStr(i),TStr(i))
Next
你举的这个例好像和我说的不是一回事哦!
你这个程序无非是把KStr数组和TStr数组中的字符一一对应的替换,
用vbcrlf替换<br>,用'替换chr(34),用"替换'.
zuoye=request.form("zuoye") '从表单中<textarea> 中提取作业
zuoye=replace(zuoye,"br",vbcrlf)
zuoye=replace(zuoye,chr(34),"'")
zuoye=replace(zuoye,"'",""")
但如果zuoye变量中同时含有多个‘和“时,如zuoye="sing'dou"s"fd'"时,
第二个replace语句把其中所有的“用’替换,即zuoye="sing'dou's'fd'"
接着第三个replace语句又把zuoye中的‘用“替换,即zuoye="sing"dou"s"fd""
如果我上面的解释是正确的话,第二个replace语句不显得多余吗?只要第三个语句也能实现同样的效果呀!