找回密码
 加入
搜索
查看: 7060|回复: 9

[原创] 补“《Let's AutoIt》自由天空AU3零起步教程 AutoIt”教程中(StringSplit函数)解释

  [复制链接]
发表于 2010-3-15 11:37:13 | 显示全部楼层 |阅读模式
呵呵,这是对对“《Let's AutoIt》自由天空AU3零起步教程 AutoIt”教程中字符串相关函数解释  中,第8个StringSplit函数的详细解释!
StringSplit  
作用:以指定分隔符把字符串拆分成若干子串

语法:StringSplit ( "字符串", "分隔符" [, 标志 ] )

字符串:目标字符串. 也就是我们常说的内容!
分隔符: 一个或多个作为分隔符的字符! 可以这样来理解:分隔符是“字符串”的“关键字符”
标志: [可选参数]
  若标志为0(默认值),则(分隔符)字符串中的每个字符都将用于拆分字符串.
  若标志为1,则只能以整个分隔符字符串来拆分字符串.
  若标志为2,关闭第一个元素中的返回数量 - 方便使用 UBound() 得到此基于0开始的数组.
    呵呵,不要小看“可选参数”如果灵活运行之,结果会有想不到的效果!(后面偶用代码来详解之)

看完这些后,也明白“语法”中各个参数中的作用及区别,那运行完后,结果是啥呢!

我们要接着看:运行stringsplit()后,用msgbox来获取运行结果:是一个数组!!!!(数组是什么,不明白的话,去补下基础知识吧“-_-”)
偶以“帮助”代码来举例:
$days = StringSplit("Sun,Mon,Tue,Wed,Thu,Fri,Sat", ",")
;$days[1] contains "Sun" ... $days[7] contains "Sat"
如果按照上述代码分析的话,肯定会“_-_”的
那偶这样举例呢:
举例一
$days = StringSplit("Sun,Mon,Tue,Wed,Thu,Fri,Sat", ",")
;$days[1] contains "Sun" ... $days[7] contains "Sat"
msgbox(0,"举例",$days[0])
运行之后会返回   如下图:

结果为什么是“7”呢! $days中那个是产生“7”的关键之处呢! 如果你明白上面的“分隔符”含义!这里也不难理解了!
举例二:
$days = StringSplit("Sun,Mon,Tue,Wed,Thu,Fri,Sat", " ");把","换为" "(双引号里是空格)
;$days[1] contains "Sun" ... $days[7] contains "Sat"
msgbox(0,"举例",$days[0])
运行之:结果如下图:

结果是1,为什么,引用帮助的解释:若(在目标字符串中)未发现分隔符则 @error 将被设为1,子串数量($array[0])等于1,而函数将返回整个字符串($array[1]).  多多理解此含义哦,后面还是有代码来说明的!
举例三:
$days = StringSplit("Sun,Mon,Tue,Wed,Thu,Fri,Sat", "");","改为""
;$days[1] contains "Sun" ... $days[7] contains "Sat"
msgbox(0,"举例",$days[0])
结果是27  为什么呢,引用帮助的话:若给定的分隔符是个空字符串 "",则每个字符将作为数组元素返回.
如果改"$days[0]"中[0]改为[1] 运行之,结果会是 s ;  2呢 结果会是u  依次推类!!!!
举例四:
$days = StringSplit("Sun,Mon,Tue,Wed,Thu,Fri,Sat", ",",0)
;$days[1] contains "Sun" ... $days[7] contains "Sat"
msgbox(0,"举例",$days[0])
开始加“标志”, 为了方便:标志=结果    0=7 ; 1=7 ; 2=Sun ; 3=Sun ; 4=1 ; 5=1 ; 6=Sun ; 7=Sun ; 8=1 9=1 ; 10=Sun ; 11=Sun ; 12=1 ..........
呵呵,有规律性的分类!!!

复习题:
$days = StringSplit("Sun,Mon,Tue,Wed,Thu,Fri,Sat", ",",3)
;$days[1] contains "Sun" ... $days[7] contains "Sat"
msgbox(0,"举例",$days[2])
此函数 还有更多的组合,需要你我慢慢的领悟.............

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2010-3-15 14:42:21 | 显示全部楼层
好东西,继续补充
发表于 2010-3-17 12:51:09 | 显示全部楼层
这个确实是好东西 我也顶下
发表于 2010-3-22 19:42:51 | 显示全部楼层
这个内容要加进那个教程里面去就好了。
发表于 2010-3-22 19:43:17 | 显示全部楼层
还没学到这里来呢。
发表于 2010-4-9 16:31:21 | 显示全部楼层
感谢楼主,先收藏了
发表于 2010-6-9 09:10:52 | 显示全部楼层
先收藏了,感谢楼主
发表于 2013-4-18 08:34:01 | 显示全部楼层
好东西,多谢分享。。。。。。。。。。
发表于 2013-4-19 08:46:23 | 显示全部楼层
好,试试看!
发表于 2013-9-16 22:38:34 | 显示全部楼层
学习加支持!!!
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-4-29 00:41 , Processed in 0.082446 second(s), 21 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表