
asp的replace函数得不到想要的效果,请教。
<%str1="000000"response.Write(str1&"<br>")str1=replace(str1,"0","1",4,1)response.Writ...
<%
str1="000000"
response.Write(str1&"<br>")
str1=replace(str1,"0","1",4,1)
response.Write(str1)
'想得到的效果为:000100,可事实得到的为:100,为什么?
%>
麻烦各位大师告诉我如何才能得到000100的字符串效果?我需求解决方法。谢谢
回复 KingsNet:不是单纯的替换第四位,能否在replace的基本上达到我上面的目标效果啊? 展开
str1="000000"
response.Write(str1&"<br>")
str1=replace(str1,"0","1",4,1)
response.Write(str1)
'想得到的效果为:000100,可事实得到的为:100,为什么?
%>
麻烦各位大师告诉我如何才能得到000100的字符串效果?我需求解决方法。谢谢
回复 KingsNet:不是单纯的替换第四位,能否在replace的基本上达到我上面的目标效果啊? 展开
2个回答
展开全部
Replace(expression, find, replacewith [,start[,count[,compare]]])
Replace 函数的返回值是经过替换(从由 start 指定的位置开始到 expression 字符串的结尾)后的字符串,而不是原始字符串从开始至结尾的副本。
你设置的Start是4,所以前3位就没了。
不知道你的具体要求,如果是只替换第4位,那可以这么写:
<%
str1="000000"
response.Write(str1&"<br>")
str1=left(str1,3)&replace(mid(str1,4,1),"0","1")&mid(str1,5)
response.Write(str1)
%>
Replace 函数的返回值是经过替换(从由 start 指定的位置开始到 expression 字符串的结尾)后的字符串,而不是原始字符串从开始至结尾的副本。
你设置的Start是4,所以前3位就没了。
不知道你的具体要求,如果是只替换第4位,那可以这么写:
<%
str1="000000"
response.Write(str1&"<br>")
str1=left(str1,3)&replace(mid(str1,4,1),"0","1")&mid(str1,5)
response.Write(str1)
%>
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询