gpt4 book ai didi

python - Python 中的电话号码正则表达式 (Regex)

转载 作者:太空宇宙 更新时间:2023-11-04 06:30:33 25 4
gpt4 key购买 nike

Dive into python 提供了一个关于为电话号码创建正则表达式的惊人小教程:http://diveintopython3.ep.io/regular-expressions.html#phonenumbers

最终版本看起来像:

phone_re = re.compile(r'(\d{3})\D*(\d{3})\D*(\d{4})\D*(\d*)$', re.VERBOSE)

这几乎适用于我能想到的所有示例,但是我发现了一个我似乎无法修复的相当大的错误。

如果一组 3 位数字出现在电话号码之前,它就可以正常工作。 IE:“减 500 美元,请调用 123-456-7891”

如果电话号码后面出现一组 3 位数字,则失败。 IE:“调用 123-456-7891 最高可享受 500 的折扣”

关于对这两个示例都适用的修复有什么想法吗?

最佳答案

(\d*)$ 要求您匹配的字符串以数字字符结尾($ 表示“行尾”)。如果您匹配的是电话号码可能不在行尾的较大字符串,请尝试删除 $

关于python - Python 中的电话号码正则表达式 (Regex),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3484721/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com