使用awk提取字符串中的数字或字母
2016-09-22 04:53
281 查看
1.提取字符串中的数字
法一:
$ echo 'dsFUs34tg*fs5a%8ar%$#@' |awk -F "" ' { for(i=1;i<=NF;i++) { if ($i ~ /[[:digit:]]/) { str=$i str1=(str1 str) } } print str1 }' 输出 3458 或 $ echo 'dsFUs34tg*fs5a%8ar%$#@' |awk -F "" ' { for(i=1;i<=NF;i++) { if ($i ~ /[0-9]/) { str=$i str1=(str1 str) } } print str1 }' 输出 34582.提取字符串中的小写字母
$ echo 'dsFUs34tg*fs5a%8ar%$#@' |awk -F "" ' { for(i=1;i<=NF;i++) { if ($i ~ /[[:lower:]]/) { str=$i str1=(str1 str) } } print str1 }' 输出 dsstgfsaar3.提取字符串中的大写字母
$ echo 'dsFUs34tg*fs5a%8ar%$#@' |awk -F "" ' { for(i=1;i<=NF;i++) { if ($i ~ /[[:upper:]]/) { str=$i str1=(str1 str) } } print str1 }' 输出 FU4.提取字符串中的字母(不区分大小写)
法一:
$ echo 'dsFUs34tg*fs5a%8ar%$#@' |awk -F "" ' { for(i=1;i<=NF;i++) { if ($i ~ /[a-z]/) { str=$i str1=(str1 str) } } print str1 }' 输出 dsFUstgfsaar 法二: $ echo 'dsFUs34tg*fs5a%8ar%$#@' |awk -F "" ' { for(i=1;i<=NF;i++) { if ($i ~ /[[:alpha:]]/) { str=$i str1=(str1 str) } } print str1 }' 输出: dsFUstgfsaar5.提取字符串中的非数字字符
法一: $ echo 'dsFUs34tg*fs5a%8ar%$#@' |awk -F "" ' { for(i=1;i<=NF;i++) { if ($i ~ /[^0-9]/) { str=$i str1=(str1 str) } } print str1 }' 输出 dsFUstg*fsa%ar%$#@ 法二: $ echo 'dsFUs34tg*fs5a%8ar%$#@' |awk -F "" ' { for(i=1;i<=NF;i++) { if ($i !~ /[0-9]/) { str=$i str1=(str1 str) } } print str1 }' 输出 dsFUstg*fsa%ar%$#@ 法三: echo 'dsFUs34tg*fs5a%8ar%$#@' |awk -F "" ' { for(i=1;i<=NF;i++) { if ($i ~ /[^[:digit:]]/) { str=$i str1=(str1 str) } } print str1 }' 输出 dsFUstg*fsa%ar%$#@6.提取字符串中的除数字字母外的字符
法一: $ echo 'dsFUs34tg*fs5a%8ar%$#@' |awk -F "" ' { for(i=1;i<=NF;i++) { if ($i ~ /[^0-9a-zA-Z]/) { str=$i str1=(str1 str) } } print str1 }' 输出: *%%$#@ 法二: $ echo 'dsFUs34tg*fs5a%8ar%$#@' |awk -F "" ' { for(i=1;i<=NF;i++) { if ($i ~ /[^[:alnum:]]/) { str=$i str1=(str1 str) } } print str1 }' 输出: *%%$#@ 法三: $ echo 'dsFUs34tg*fs5a%8ar%$#@' |awk -F "" ' { for(i=1;i<=NF;i++) { if ($i ~ /[^[:digit:]]/ && $i ~ /[^[:lower:]]/ && $i ~ /[^[:upper:]]/) { str=$i str1=(str1 str) } } print str1 }' 输出 *%%$#@
相关文章推荐
- 在Shell脚本中编写AWK脚本实现数据提取—注意格式、awk中使用shell变量、awk中数字字符串转换成数字、awk中字符串相等比较
- 从字母数字字符串中提取数字
- 有一字符串,包含数字与字母,编程去除数字。要求:1要求在原字符串中操作 2、使用指针处理
- 字符串提取数字/汉字/英文字母
- 使用Java正则表达式提取字符串中的数字一例
- 编写代码,由用户输入一个字符串,使用foreach循环遍历出此字符串中有多个字母,多少个数字,多少个标点
- 有一字符串,包含数字与字母,编程去除数字。要求:1、要求在原字符串中操作 2、使用指针处理
- java提取字符串中的字母数字
- 有一字符串,包含数字与字母,编程去除数字。要求:1要求在原字符串中操作 2、使用指针处理
- 有一字符串包含字母,数字,编程实现取出数字;使用函数,指针实现
- javaScript正则表达式提取字符串中字母、数字、中文 && 字符串替换
- 有一字符串,包含数字与字母,编程去除数字。要求:1、要求在原字符串中操作2、使用指针处理
- java提取字符串中汉字、数字、字母
- 从字母数字字符串中提取数字
- tsql 用户函数- 从字符串中提取需要的字符(中文,数字,字母等)
- 从字母数字字符串中提取数字
- 有一字符串,包含数字与字母,编程去除数字。要求: //要求在原字符串中操作 //使用指针处理
- 有一字符串,包含数字与字母,编程去除数字。(1、要求在原字符串中操作,2、使用指针处理)
- 利用awk命令提取字符串中的所有数字
- java:使用正则提取字符串中的数字(例如提取短信中的验证码)