python 从字符串中删除电话号码

2024-02-25

我有一个如下所示的文本文件:

rgf34 | 9 | 2015-07-20 | hello this is my number 1234567890 
rgf35 | 10 | 2015-07-20 | my number : 123 - 456 -8888 can you check...

这些列是用管道分隔的,每个新数据都在一个新行上。

我怎样才能只浏览第三列remove所有 ph 值? (所有电话号码都是 10 位数字,我不知道它们是否有括号或破折号。)

我知道我可以使用 awk 首先获取第三列中的数据,但我对如何执行正则表达式部分感到困惑:

这是 awk 部分:

awk -F "|" '{print $4}' myfile.txt

预期输出:

rgf34 | 9 | 2015-07-20 | hello this is my number 
rgf35 | 10 | 2015-07-20 | my number : can you check...

如果你把它放在 a.awk 中

BEGIN {
    FS = OFS = "|"
}
{
    sub(/[0-9].*[0-9]/, "", $4)
    print
}

and run

awk -f a.awk foo.txt

您将得到您想要的输出。

如果输入是

rgf34 | 9 | 2015-07-20 | hello this is my number 1234567890 
rgf35 | 10 | 2015-07-20 | my number : 123 - 456 -8888 can you check...

输出将是

rgf34 | 9 | 2015-07-20 | hello this is my number
rgf35 | 10 | 2015-07-20 | my number :  can you check...
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python 从字符串中删除电话号码 的相关文章

随机推荐