| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 774 人关注过本帖
标题:截取字符串输出的问题求指教
只看楼主 加入收藏
dhdhzzw
Rank: 1
等 级:新手上路
帖 子:949
专家分:0
注 册:2007-8-13
结帖率:81.82%
收藏
 问题点数:0 回复次数:8 
截取字符串输出的问题求指教
<%
  
  Dim StrNum,StrNew
StrNum="1234567890123456789435"       这里不加双引号的话字符串就只能写10位为什么?
for i=1 to len(StrNum)
StrNew = StrNew & Mid(StrNum,i,1)&"<br />" 为什么去掉蓝色部分输出结果会不一样呢?我不太懂很简单各位可以复制下来试试,我的盲点,特来请教
next
Response.write (StrNew)
%>
搜索更多相关主题的帖子: 字符 输出 指教 
2008-05-27 11:45
flynet
Rank: 3Rank: 3
来 自:北京
等 级:论坛游民
威 望:7
帖 子:352
专家分:60
注 册:2007-1-28
收藏
得分:0 
Response.write (StrNew)  这个写在 next上面

PHP 新人 不断学习进取中。。。
2008-05-27 12:47
flynet
Rank: 3Rank: 3
来 自:北京
等 级:论坛游民
威 望:7
帖 子:352
专家分:60
注 册:2007-1-28
收藏
得分:0 
StrNew = StrNew & Mid(StrNum,i,1)&"<br />"  
该是StrNew = "<b>"&StrNew &"</b>"& Mid(StrNum,i,1)&"<br />"

PHP 新人 不断学习进取中。。。
2008-05-27 12:48
dhdhzzw
Rank: 1
等 级:新手上路
帖 子:949
专家分:0
注 册:2007-8-13
收藏
得分:0 
StrNew = StrNew & Mid(StrNum,i,1)&"<br />"我想问的是为什么一定要加上StrNew &而不是直接
StrNew =mid(strnum,i,1)
2008-05-27 13:53
flynet
Rank: 3Rank: 3
来 自:北京
等 级:论坛游民
威 望:7
帖 子:352
专家分:60
注 册:2007-1-28
收藏
得分:0 
准确代码是
Dim StrNum,StrNew
StrNum="1234567890123456789435"  
for i=1 to len(StrNum)
StrNew =StrNew&"<b>"& Mid(StrNum,i,1)&"</b><br />"
next
Response.write (StrNew)
也可写成
Dim StrNum,StrNew
StrNum="1234567890123456789435"  
for i=1 to len(StrNum)
StrNew ="<b>"& Mid(StrNum,i,1)&"</b><br />"
Response.write (StrNew)
next
效果是 一样的

PHP 新人 不断学习进取中。。。
2008-05-27 16:18
multiple1902
Rank: 8Rank: 8
等 级:贵宾
威 望:42
帖 子:4881
专家分:671
注 册:2007-2-9
收藏
得分:0 
[bo][un]flynet[/un] 在 2008-5-27 12:48 的发言:[/bo]

StrNew = StrNew & Mid(StrNum,i,1)&""  
该是StrNew = ""&StrNew &""& Mid(StrNum,i,1)&""

不,那个中括号b中括号是论坛上的加粗解析错误的结果
2008-05-27 17:03
tianyu123
Rank: 1
等 级:新手上路
威 望:2
帖 子:576
专家分:0
注 册:2007-8-26
收藏
得分:0 
<%
Dim StrNum,StrNew
StrNum="1234567890123456789435"       这里不加双引号的话字符串就只能写10位为什么?
for i=1 to len(StrNum)
StrNew = StrNew &[Mid(StrNum,i,1)&"<br />" 为什么去掉蓝色部分输出结果会不一样呢?我不太懂很简单各位可以复制下来试试,我的盲点,特来请教
next
Response.write (StrNew)
%>

问题: 这里不加双引号的话字符串就只能写10位为什么?

回答:因为不加双引号数据类型就是整数类型(不是字符串),而整数类型的最大取值范围为: Long  包含 -2,147,483,648 到 2,147,483,647 之间的整数。  

问题:为什么去掉蓝色部分输出结果会不一样呢?

回答:不取掉是一个累加字符过程,而取掉就变成取字符串最后一个字符了。

改变一切,须从改变观念开始!
2008-05-27 18:58
yms123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:209
帖 子:12488
专家分:19042
注 册:2004-7-17
收藏
得分:0 
7楼解释得很正确,StrNum="1234567890123456789435"   不加双引号的话这里就不是字符串
而是数字值,但是这个数字值过大。也就是说程序里存储不了这么大的位数所以会出现错误。
&这个符号在VBScript里表示字符串连接符号,将两个字符串连接为一个字符串所使用的符号。
StrNew = StrNew &Mid(StrNum,i,1)&"<br />"
2008-05-27 19:23
dhdhzzw
Rank: 1
等 级:新手上路
帖 子:949
专家分:0
注 册:2007-8-13
收藏
得分:0 
谢谢所有人,,尤其是7,8楼   知道了。又学习了
2008-05-28 09:20
快速回复:截取字符串输出的问题求指教
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020083 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved