1
包含一些可以在字符串中查找单个数字的代码,如“555-555-5555”。但我不太确定如何扩展代码以查找字符串中的所有电话号码。代码停止后,它发现第一个数字...电话号码正则表达式
(defn foo [x]
(re-find (re-matcher #"((\d+)-(\d+)-(\d+))" x)))
有没有办法扩展此代码来查找字符串中的所有数字?
包含一些可以在字符串中查找单个数字的代码,如“555-555-5555”。但我不太确定如何扩展代码以查找字符串中的所有电话号码。代码停止后,它发现第一个数字...电话号码正则表达式
(defn foo [x]
(re-find (re-matcher #"((\d+)-(\d+)-(\d+))" x)))
有没有办法扩展此代码来查找字符串中的所有数字?
re-seq
返回所有匹配的序列与正则表达式中的字符串:
user> (defn foo [x] (re-seq #"\d+-\d+-\d+" x))
#'user/foo
user> (foo "111-222-3333 555-666-7777")
("111-222-3333" "555-666-7777")
user> (foo "phone 1: 111-222-3333 phone 2: 555-666-7777")
("111-222-3333" "555-666-7777")
因此,这将继续下去,直到找到字符串中的所有电话号码。
很好的答案,只是想添加有很多手机正则表达式 - https://stackoverflow.com/questions/123559/a-comprehensive-regex-for-phone-number-validation – edbond