• 新浪微博:
  • 微信 :
按键精灵电脑版
立即下载

软件版本:2014.05
软件大小:21.6M
更新时间:07-04

按键精灵安卓版
立即下载

软件版本:3.3.0
软件大小:62.5M
更新时间:5-24

按键精灵iOS版
立即下载

软件版本:1.3.3
软件大小:29.2M
更新时间:06-14

按键精灵Mac版
立即下载

软件版本:1.1.0
软件大小:12.3M
更新时间:12-29

快捷导航

登录 后使用快捷导航
没有帐号? 注册

登录 注册
返回列表 12345678» / 9
发新话题 回复该主题

[教程心得] 【山海教程】【零基础学按键】字符串的处理 [复制链接]

1#


零基础,轻松学习安卓按键,大家好,我是山海师~~~

在制作脚本的过程中是离不开对字符串的处理的. 今天教程的内容就是了解下基础的字符串处理, 字符串的提取\分割\替换\查找 等等操作

>>>>总目录贴入口<<<<


常用的字符串处理命令主要有几种: Instr Left Right Len Mid

Instr查找字符串




命令名称Instr
命令功能某字符串在另一字符串中第一次出现的位置
命令参数start:数值表达式,用于设置每次搜索的开始位置
string1:要搜索的字符串表达式
string2:被搜索的字符串表达式
comparision:对比方式,是否忽略大小写,可省略,默认False,即不忽略大小写
返回值整数型:字符串在另一字符串中第一次出现的位置


查找字符串命令是常用的命令之一, 用来在某一个字符串中查找特定的字符是否存在, 存在的话则返回出现的位置.否则返回0
  1. //在字符串SearchString中查找String字符
  2. Dim SearchString
  3. SearchString = "SearchString"
  4. TracePrint instr(1,SearchString,"String")
复制代码
instr命令的第一个参数代表从第几个字符开始查找. 利用好这个参数是活用这个命令的关键
利用instr命令来查找字符串中所有符合要求的字符的位置
  1. // 查找出XXpXXpXXpXXp中所有字母P的位置
  2. Dim SearchString,pos
  3. SearchString = "XXpXXpXXpXXp"
  4. Do
  5. pos = instr(pos+1,SearchString,"p")
  6. If pos = 0 Then
  7. Exit Do
  8. Else
  9. TracePrint pos
  10. End If
  11. Loop
复制代码
上面的代码是把上一次查找到的位置+1个字符作为下次查找的起始点, 这样就可以实现遍历整个字符串来查找所有位置了.

提取字符串




命令名称Left
命令功能指定数目的从字符串的左边算起的字符
命令参数string:字符串表达式,其最左边的字符被返回
length:数值表达式,指明要返回的字符数目
返回值指定数目的从字符串的左边算起的字符


这个命令是用来提取从左边开始提取出指定长度的字符
范例:
  1. Dim MyString = "123456789"
  2. TracePrint left(MyString,4)
复制代码
命令名称Right
命令功能从字符串右边返回指定数目的字符
命令参数string:字符串表达式,其最右边的字符被返回
length:数值表达式,指明要返回的字符数目
返回值返回右边指定数目的字符


这个命令和上面的命令相反, 是从右边开始取字符
范例:
  1. Dim MyString = "123456789"
  2. TracePrint Right (MyString,4)
复制代码
命令名称Mid
命令功能从字符串中返回指定数目的字符
命令参数string:字符串表达式,从中返回字符
start:string中被提取的字符部分的开始位置
length:要返回的字符数目
返回值返回指定数目的字符串


这个命令是用来从字符串中间提取字符的, 从指定的开始位置提取出指定长度的字符
范例:
  1. Dim MyString = "123456789"
  2. TracePrint mid(MyString,3,4)
复制代码

Len取字符串字符数




命令名称Len
命令功能字符串内字符的数目
命令参数string:任意有效的字符串表达式
返回值整数型,字符串内字符的数目


这个命令用于获取一个字符串有多少个字符, 常常是用于配合其他的命令来使用
范例:
  1. Dim MyString = "123456789"
  2. For i = 1 To Len(MyString)
  3. TracePrint mid(MyString,i,1)
  4. Next
复制代码
这段代码可以用来遍历字符串中的每个字符.

遍历字符串中的数字, 把数字全部提取出来
  1. Dim MyString = "Th324is is a5 te6st 346code"
  2. Dim tmpstr,retnum
  3. For i = 1 To Len(MyString)
  4. tmpstr = Mid(MyString, i, 1)
  5. If IsNumeric(tmpstr) Then
  6. retnum = retnum & tmpstr
  7. End If
  8. Next
  9. TracePrint retnum
复制代码
注意: 这里是是英文和数字的字符串处理. 中文的字符串处理需要使用扩展命令里的UTF8字符串命令, 否则无法正常处理中文的字符.






赠人玫瑰手有余香~~~你的一个顺手回复也许就可以让这个帖子给更多的人看到,就能帮助更多的人~~~

最后编辑quitout 最后编辑于 2016-05-10 19:03:25
本主题由 版主 gljxsd 于 2018/2/7 14:25:06 执行 删除帖子 操作
2#

这么好的帖子怎么没有人顶了,

3#


4#

顶起来,好帖子

新人,望点拨.,,...一下拨不动,请多拨两下....
5#

楼主加油0

6#

谢谢


各类脚本定制
QQ: 2776500271
7#

邦邦达 加分

8#


9#

先收藏了,字串真是一头雾水,额。

10#

白白白白白白rr

11#

阿斯顿

12#


13#

Dim MyString = "Th324is is a5 te6st 346code"
Dim tmpstr,retnum
For i = 1 To Len(MyString)
tmpstr = Mid(MyString, i, 1)
If IsNumeric(tmpstr) Then
retnum = retnum & tmpstr
End If
Next
TracePrint retnum

[url=http://bbs.anji
14#

谢谢

15#

英文和数字的字符串处理. 中文的字符串处理需要使用扩展命令

16#

顶下

17#

我以前貌似回复过这个帖子

18#


19#

谢谢楼主分享!!

人的梦想是不会终结的!!!
20#

总结的不错,需要学习

发新话题 回复该主题