字符串操作的一个shell脚本
时间:2010-09-03 来源:sunjiangang-ok
#!/bin/bash
#字符串长度
echo "字符串长度"
str=inpath.abc
echo ${#str}
echo `expr length $str`
echo `expr "$str" : '.*'`
#从字符串开始的位置匹配子串的长度
echo "从字符串开始的位置匹配子串的长度"
echo `expr match "$str" "[a-z]*.[A-Z]*"`
echo `expr "$str" : "[a-z]*.[A-Z]*"`
#匹配到子串的第一个字符的位置
echo "匹配到子串的第一个字符的位置"
echo `expr index "$str" "ab"` #匹配a
echo `expr index "$str" "b."` #匹配.
#提取子串
echo "提取子串"
echo ${str:0}
echo ${str:4}
echo ${str:3:2}
echo ${str:(-4)}
echo ${str: -4} #这里有一个空格
echo ${@:2} #如果第一个为*或@时将显示从第2个和后面所有的位置参数
echo ${*:2}
echo ${*:2:3}
#另外一种提取子串的方法
echo "另外一种提取子串的方法"
echo `expr substr $str 2 3`
#子串消除
echo "子串消除"
echo ${str#i*a} #最近匹配
echo ${str##i*a} #最远匹配
echo ${str%a*c} #从右最近匹配
echo ${str%%a*c} #从右最远匹配
echo ${str%${str#?}}
#子串替换
echo "子串替换"
echo ${str/in/12} #只替换第一个
echo ${str//in/12} #替换所有的
exit 0
#字符串长度
echo "字符串长度"
str=inpath.abc
echo ${#str}
echo `expr length $str`
echo `expr "$str" : '.*'`
#从字符串开始的位置匹配子串的长度
echo "从字符串开始的位置匹配子串的长度"
echo `expr match "$str" "[a-z]*.[A-Z]*"`
echo `expr "$str" : "[a-z]*.[A-Z]*"`
#匹配到子串的第一个字符的位置
echo "匹配到子串的第一个字符的位置"
echo `expr index "$str" "ab"` #匹配a
echo `expr index "$str" "b."` #匹配.
#提取子串
echo "提取子串"
echo ${str:0}
echo ${str:4}
echo ${str:3:2}
echo ${str:(-4)}
echo ${str: -4} #这里有一个空格
echo ${@:2} #如果第一个为*或@时将显示从第2个和后面所有的位置参数
echo ${*:2}
echo ${*:2:3}
#另外一种提取子串的方法
echo "另外一种提取子串的方法"
echo `expr substr $str 2 3`
#子串消除
echo "子串消除"
echo ${str#i*a} #最近匹配
echo ${str##i*a} #最远匹配
echo ${str%a*c} #从右最近匹配
echo ${str%%a*c} #从右最远匹配
echo ${str%${str#?}}
#子串替换
echo "子串替换"
echo ${str/in/12} #只替换第一个
echo ${str//in/12} #替换所有的
exit 0
相关阅读 更多 +