关于一行文本的字段提取

sh/bash/dash/ksh/zsh等Shell脚本
回复
zeng8809
帖子: 19
注册时间: 2010-07-06 23:58

关于一行文本的字段提取

#1

帖子 zeng8809 » 2012-03-26 18:30

有一行这样的文本:
insert into profiling (hello, world, status, day, question) values('552173912345', 0, 0,'optin', '2012-03-26 08:16:00');

如何有效无误地提取数字串551273912345出来呢??

求各位大牛解答,有点急!!^_^
头像
lilydjwg
论坛版主
帖子: 4258
注册时间: 2009-04-11 23:46
系统: Arch Linux
联系:

Re: 关于一行文本的字段提取

#2

帖子 lilydjwg » 2012-03-26 18:47

什么意思?你要提取的是第一个出现的数字?values 后第一个出现的数字?左圆括号后第二个出现的数字?第一个出现在单引号中的数字?第二对圆括号中的第一个逗号分隔的字段去掉引号后的文本?。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
头像
b33e
帖子: 3874
注册时间: 2011-06-07 14:20

Re: 关于一行文本的字段提取

#3

帖子 b33e » 2012-03-26 19:10

用单引号可以把这段分割为若干部分,取第二部分正好就是你所要的数字

代码: 全选

echo "insert into profiling (hello, world, status, day, question) values('552173912345', 0, 0,'optin', '2012-03-26 08:16:00');"|cut -d "'" -f 2
echo只是显示,cut是提取。
不知道你的具体要求,只能这么就事论事了。
zeng8809
帖子: 19
注册时间: 2010-07-06 23:58

Re: 关于一行文本的字段提取

#4

帖子 zeng8809 » 2012-03-26 20:24

b33e, b33e :em11
回复