Chinaunix
标题:
如何过滤指定位数的字符串
[打印本页]
作者:
zsgd
时间:
2013-08-05 15:12
标题:
如何过滤指定位数的字符串
有一个文件n行,每行里面有空格分开不同位数的字符串若干个,现在需要找出每行里面是4位的字符串,数据如下,谢谢
8721 23ENY18 7985 99A2353 8864 99C4701 8721 23ENY12 8721 23ENY13 8721 06FZVF8
8852 06EMMZ7 8852 06H8HD7
CNG28SZFQ" 7376 06P0245 7164 D637039
7979 99P3697
8864 99C1749
8722 23D4802
7945 99M1231 8722 23D48908 7145 99A3347
7164 0637091 7945 06F5346 7915 06CNZ58
7945 99N9031 8722 23D4924
作者:
关阴月飞
时间:
2013-08-05 15:30
是这个意思不:
awk -vRS=' ' 'length($0)==4' urfile
复制代码
作者:
zxd_echo
时间:
2013-08-05 15:30
awk '{for(i=1;i<=NF;i++){if(length($i)==4)print $i}}' file
作者:
代号:军刀
时间:
2013-08-05 15:33
grep -oP '\b.{4}\b'
复制代码
作者:
todayhero
时间:
2013-08-05 15:36
@zsgd
awk '{for(i=1;i<=NF;i++){if(length($i)==4)print $i}}' urfile
复制代码
作者:
zsgd
时间:
2013-08-05 15:38
非常感谢大家,谢谢。
需要努力学习了
作者:
zxd_echo
时间:
2013-08-05 15:42
awk --re-interval -vRS=' ' '/^[0-9]{4}$/{print $0}'
作者:
Shell_HAT
时间:
2013-08-05 16:23
回复
4#
代号:军刀
结果里面有空行
作者:
代号:军刀
时间:
2013-08-05 16:33
回复
8#
Shell_HAT
grep -oP '\b[^ ]{4}\b'
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2