求救:怎么用正则表达取第3个值

sh/bash/dash/ksh/zsh等Shell脚本
回复
Kinx
帖子: 24
注册时间: 2006-12-11 13:02
送出感谢: 0
接收感谢: 0

求救:怎么用正则表达取第3个值

#1

帖子 Kinx » 2009-03-09 22:33

例子: A,B,C,D,E,F

怎么用正则表达取出 C (c 可以是任何东西,动态值)? 其他都不要包括 “,” :em06

谢谢帮助。。
头像
xiooli
帖子: 6956
注册时间: 2007-11-19 21:51
来自: 成都
送出感谢: 0
接收感谢: 3 次
联系:

Re: 求救:怎么用正则表达取第3个值

#2

帖子 xiooli » 2009-03-09 22:40

awk -F"," '{print $3}'
Kinx
帖子: 24
注册时间: 2006-12-11 13:02
送出感谢: 0
接收感谢: 0

Re: 求救:怎么用正则表达取第3个值

#3

帖子 Kinx » 2009-03-09 22:42

xiooli 写了:awk -F"," '{print $3}'
awk 简单。。 我要用RE。。。:(
头像
HuntXu
论坛版主
帖子: 5776
注册时间: 2007-09-29 3:09
送出感谢: 0
接收感谢: 6 次

Re: 求救:怎么用正则表达取第3个值

#4

帖子 HuntXu » 2009-03-09 22:46

echo A,B,C,D,E,F|sed -r 's/([a-zA-Z0-9]+,){2}([a-zA-Z0-9]+),.*/\2/'
非要正则的话...
HUNT Unfortunately No Talent...
头像
xiooli
帖子: 6956
注册时间: 2007-11-19 21:51
来自: 成都
送出感谢: 0
接收感谢: 3 次
联系:

Re: 求救:怎么用正则表达取第3个值

#5

帖子 xiooli » 2009-03-09 23:55

好吧,
sed 's/^[^,]*,//;s/^[^,]*,//;s/,.*$//'
:em06
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙
送出感谢: 4 次
接收感谢: 256 次

Re: 求救:怎么用正则表达取第3个值

#6

帖子 eexpress » 2009-03-10 9:07

这sed,也不等于正则吧。
这正则是什么意思呢?
可能还不如cut算了。
奇怪的。
● 鸣学
回复

回到 “Shell脚本”