若是需要提取一个字符串中想要的数据,可以思考下awk
1、提取字符串中出现的阿拉伯数字
echo "ABC123abc"| awk 'BEGIN{FS=""}{for(i=1;i<=NF;i++){if($i ~ /[[:digit:]]/){str=$i;str1=(str1 str)}}print str1}'
2、提取字符串中的小写字母
echo "ABC123abc"| awk 'BEGIN{FS=""}{for(i=1;i<=NF;i++){if($i ~ /[[:lower:]]/){str=$i;str1=(str1 str)}}print str1}'
3、提取字符串中的大写字母
echo "123abcABC"| awk 'BEGIN{FS=""}{for(i=1;i<=NF;i++){if($i ~ /[[:upper:]]/){str=$i;str1=(str1 str)}}print str1}'
4、提取字符串中非阿拉伯数字
echo "123abcABC"| awk 'BEGIN{FS=""}{for(i=1;i<=NF;i++){if($i ~ /[^0-9]/){str=$i;str1=(str1 str)}}print str1}'
5、提取字符串终中的字母,不分大小写
echo "123abcABC"| awk 'BEGIN{FS=""}{for(i=1;i<=NF;i++){if($i ~ /[[:alpha:]]/){str=$i;str1=(str1 str)}}print str1}'
网友评论