此问题已在此处有答案:
Regex Match all characters between two strings(16个回答)
15天前关闭。
我正在尝试创建一个正则表达式查询来提取字符之间的所有内容
^1234:
和/或
, ^5678:
我尝试了以下方法,但不起作用。我走对路了吗?
^(\^1234),(\^5678)$
示例文本:
54:16812344266, ^1234:iwantthistext, ^5678:idontwantthis, ^0000: idontwantthiseither
2条答案
按热度按时间qcuzuvrc1#
如果你使用
sed
,你可以这样做:您希望使用
()
捕获字符串之间的匹配。然后用捕获文本替换完整值。第一个
.*
匹配^1234
之前的所有内容,第二个.*
匹配^5678
之后的所有内容。^
需要用反斜杠转义,这样sed
就不会使用它进行插值。bnl4lu3b2#
例如:
\^1234(.*?), \^5678
输入
54:16812344266, ^1234:iwantthistext, ^5678:idontwantthis, ^0000: idontwantthiseithere
将输出:https://regex101.com/r/22Fplx/1