字符串处理的一些技巧
来源:互联网 发布:身份证验证算法 编辑:程序博客网 时间:2024/06/05 15:28
转自chinaunix
http://bbs.chinaunix.net/thread-201843-1-1.html
得到长度
- %x="abcd"
- #方法一
- %expr length $x
- 4
- # 方法二
- %echo ${#x}
- 4
- # 方法三
- %expr "$x" : ".*"
- 4
- # expr 的帮助
- # STRING : REGEXP anchored pattern match of REGEXP in STRING
查找子串
- %expr index $x "b"
- 2
- %expr index $x "a"
- 1
- %expr index $x "b"
- 2
- %expr index $x "c"
- 3
- %expr index $x "d"
- 4
得到子字符串
- # 方法一
- # expr <string> startpos length
- %expr substr "$x" 1 3
- abc
- %expr substr "$x" 1 5
- abcd
- %expr substr "$x" 2 5
- bcd
- # 方法二
- # ${x:pos:lenght}
- %echo ${x:1}
- bcd
- %echo ${x:2}
- cd
- %echo ${x:0}
- abcd
- %echo ${x:0:2}
- ab
- %pos=1
- %len=2
- %echo ${x:$pos:$len}
- bc
匹配正则表达式
- # 打印匹配长度
- %expr match $x "."
- 1
- %expr match $x "abc"
- 3
- %expr match $x "bc"
- 0
字符串的掐头去尾
- %x=aabbaarealwwvvww
- %echo "${x%w*w}"
- aabbaarealwwvv
- %echo "${x%%w*w}"
- aabbaareal
- %echo "${x##a*a}"
- lwwvvww
- %echo "${x#a*a}"
- bbaarealwwvvww
其中 , # 表示掐头, 因为键盘上 # 在 $ 的左面。
其中 , % 表示%, 因为键盘上 % 在 $ 的右面。
单个的表示最小匹配,双个表示最大匹配。
也就是说,当匹配的有多种方案的时候,选择匹配的最大长度还是最小长度。
字符串的替换
- %x=abcdabcd
- %echo ${x/a/b} # 只替换一个
- bbcdabcd
- %echo ${x//a/b} # 替换所有
- bbcdbbcd
不可以使用 regexp , 只能用 * ? 的文件扩展方式
- 字符串处理的一些技巧
- 一些字符串的处理
- 字符串的一些处理
- String处理字符串的技巧
- 字符串的一些处理方法
- 字符串处理的一些题
- 字符串处理的一些总结
- 字符串处理的一些应用
- 格式化字符串函数的一些小技巧
- rails 字符串的一些小技巧
- 用PHOTOSHOP处理图片的一些技巧
- 处理干扰的一些小技巧
- java多线程的一些处理技巧
- 关于一些业务逻辑的处理技巧
- 【shell】文本处理的一些小技巧
- 样本不均衡的一些处理技巧
- Python中空格字符串的处理技巧
- 字符串处理的一些常用函数
- WPF - Data Binding入门概述
- 如何安装IIS - WINDOWS XP下IIS的安装
- YUM常用命令介绍
- 解决Mysql中的中文乱码问题
- C++模板实现事件处理器中的“通用成员函数指针”的调用
- 字符串处理的一些技巧
- 在连接到SQL Server2005时,在默认的设置下SQL Server不允许进行远程连接可能会导致此失败--的解决
- 自动自发总结
- IF
- Oracle数据导入导出
- 解析Monte-Carlo算法(基本原理,理论基础,应用实践)
- visual studio2010 下配置opencv2.1/2.2 亲身实践
- 在Eclipse中使用spket插件配置ExtJS环境
- 如何配置JSP中的FCKeditor编辑器(IDE:MyEclipse 6.5)