Chinaunix
标题:
如何用shell取得字符串中的数字?
[打印本页]
作者:
wooin
时间:
2009-04-03 09:37
标题:
如何用shell取得字符串中的数字?
12345R
234M
7903DR
如何将其后面的字母去掉,输出:
12345
234
7903
谢谢啦。。。
作者:
我是DBA
时间:
2009-04-03 09:41
grep -Eo '[0-9]+'
作者:
ruifox
时间:
2009-04-03 09:44
sed 's/[^0-9]//g' file
作者:
我是DBA
时间:
2009-04-03 09:51
[test@ ~ ] $ awk -F'[^0-9]+' 'NF=NF' 1
12345
234
7903
作者:
justlooks
时间:
2009-04-03 09:55
grep -oP '\d+'
作者:
HH106
时间:
2009-04-03 09:56
awk '{print $1+0}'
作者:
liaosnet
时间:
2009-04-03 10:10
原帖由
HH106
于 2009-4-3 09:56 发表
awk '{print $1+0}'
注意,这个仅适用于数字开头的,到不是数字就结束了...
作者:
飞鸿无痕
时间:
2009-04-03 10:12
标题:
回复 #1 wooin 的帖子
tr -cs '[0-9]' '\n' file
[root@server2 shell]# cat a
12345R
234M
7903DR
[root@server2 shell]# tr -cs '[0-9]' '\n' <a
12345
234
7903
作者:
wooin
时间:
2009-04-03 22:56
这么多方法呀?哪个最好呀?
作者:
wtuter
时间:
2009-04-03 23:16
标题:
回复 #8 飞鸿无痕 的帖子
[WWW]tr -cd '[0-9\n]' <b
12345
234
7903
作者:
angeljyt
时间:
2009-04-04 00:15
sed -e "s/[^0-9]*$//g" test.txt
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2