如何解决删除除单词以外的所有内容
我花了好几个小时在正则表达式中寻找一种方法来删除一行中除特定文本之外的所有内容。它会是这样的:
之前:
Caracas
UNUSABLE TEXT Caracas UNUSABLE TEXT
Caracas
之后:
Caracas
Caracas
Caracas
Caracas
我对此做了很多测试:
查找: .(text_you_need_to_keep).
替换: $1
但我无法让它工作。
解决方法
你可以使用
查找内容: (Caracas)|\R*(?:(?!Caracas).)+\R*
替换为:(?{1}$1:\nCaracas\n)
详情:
-
(Caracas)
- 第 1 组:Caracas
-
|
- 或 -
\R*
- 零个或多个换行符 -
(?:(?!Caracas).)+
- 除换行符以外的一个或多个字符(尽可能多),不开始Caracas
字符序列 -
\R*
- 零个或多个换行符
如果 Group 1 匹配,则替换为 Group 1 的值,否则替换为 Caracas
,两端为换行符。
查看正则表达式演示:
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。