Chinaunix

标题: 问个sed正则替换问题?谢谢 [打印本页]

作者: spouter    时间: 2008-01-15 10:37
标题: 问个sed正则替换问题?谢谢
文件A中有如下内容,html代码中含有手机号。我想用sed正则匹配手机号替换出新行,大家有什么方法?谢谢

<td width="18%" height="22"><font color="#339900">索纳塔2.0手标的销售有什么条件吗?比如(保险、入户)。手机:13955755255</font></td>
<td width="18%" height="22"><font color="#339900">我要买一辆"现代"汽车,可以提供优质服务吗?<br>联系电话:13879080566</font></td>
<td bgcolor="#F5F5F5">13301362662、13301362618</td> <td width="18%" height="22"><font color="#339900">你好,我是qq4S店汽车销售员韩小
姐,欢迎来电13910589403&nbsp;我会给你最理想的价格,正在活动中赠送大礼包。外加雷达
作者: blackold    时间: 2008-01-15 10:47
BRE: /[^0-9]1[0-9]\{10}[^0-9]/

说明:这个pattern假设手机号码是以1开始的11数字,且手机号码之间至少有两个非数字字符。
不适合13445678901a1345678901这样的字符串。

[ 本帖最后由 blackold 于 2008-1-15 11:50 编辑 ]
作者: spouter    时间: 2008-01-15 10:59
原帖由 blackold 于 2008-1-15 10:47 发表
BRE: /[^0-9]1[0-9]\{10}[^0-9]/

这个能明白,我想在手机号前替换出个“换行符”。sed怎么写?谢谢
作者: davistar    时间: 2008-01-15 11:19
这意思?

sed 's/\([0-9]\{11\}\)/<BR>\1/g' file
作者: blackold    时间: 2008-01-15 11:46
在前后插入nl符。
sed '/pattern/\n&\n/g'  urfile
作者: spouter    时间: 2008-01-15 14:48
多谢,就是找sed这个正则回逆引用(\1或&)的写法。多谢2位

[ 本帖最后由 spouter 于 2008-1-15 14:55 编辑 ]




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2