我使用Notepad++和find and replace来删除一行中除了字符串找到的匹配项之外的所有内容。
举例来说:
第一行,这是样品。775 657 7576采样线1
第2行。第二条采样线。661-525-5366采样线2
第三行。第三行样本466.755.7888。地铁3号线
使用正则表达式\d{3}\D?\d{3}\D?\d{4}
匹配上面的数字,并删除相关行中的所有其他内容,结果如下所示
电话:0775 - 657 - 7576
电话:661-525-5366
电话:466.755.7888
3条答案
按热度按时间k4aesqcs1#
这其实很简单使用这个正则表达式:
字符串
工作原理:
此正则表达式尝试将电话号码与指定的正则表达式进行匹配。如果是,则将其从与
\K
的匹配中删除。如果没有,那么它只捕获一个字符与[\s\S]
(更好的版本.
,因为它捕获换行符以及)。使用此正则表达式查找其他所有内容并将其替换为空格。
Regex101
14ifxucb2#
字符串
您可以使用它并替换为
$1
或\1
。See demo.5lhxktic3#
这可以通过使用正则表达式find和replace中的分组概念来实现。
把你的线分成3部分,然后用你想要的部分替换它。
查找内容:
(^.*)(\d{3}\D?\d{3}\D?\d{4})(.*)
(^.*)
**(\d{3}\D?\d{3}\D?\d{4})
**(.*)
**后替换为:
\2
如何做到这一点的快照