我有一个多行输入字符串,我只想提取电话号码。 现在我写的正则表达式是获取数字,但也获得2和3行文本之间的数字。例如;
这是多行字符串;
123-(455)
Office365@gmail.com
我正在申请以下正则表达式
[(0-9),-]+
现在这个正则表达式正在提取123-(456)
和365
。
我不希望我的正则表达式从office365@gmail.com
我看了几个正则表达式,但似乎没有让我的情况工作。非常感谢帮助。感谢。
这是另一个例子;
电话 (209)123-2345,(345)123-7890 还有1个 电子邮件 xxx87@aol.com,abc87@lycos.com 雇用 这里有一些随机文字 这里有一些随机文字,编号为123.
所以我只想从正则表达式中提取下面的电话号码 (209)123-2345,(345)123-7890
答案 0 :(得分:0)
也许你正在寻找单词边界?您不希望匹配单词Office365
中的任何数字。您希望匹配在它们之前和之后具有单词边界的数字。
这就是你需要的:
\b[(0-9),-]+(\b|\n)
我必须添加\n
因为没有它与结束括号不匹配,因为显然新行不是单词边界。
试试here。
答案 1 :(得分:0)
鉴于您列出的两个示例,这有效:
^[(0-9),-]+$
只需指出允许的字符是行的开头和结尾之间允许的唯一字符