【发布时间】:2020-01-16 09:09:17
【问题描述】:
我正在尝试找到一个可以在 Notepad++ (Windows) 中使用的 REGEX 表达式(或多个),它将根据划分 URL 的特定符号来更改 URL 的不同部分。
基本上我在一个大文件中有这种类型的 URL,它们分散在周围:
domain.com/folder/random-text-1?REPLACE-THIS-1=REPLACE-THIS-2=REPLACE-THIS-3&REPLACE-THIS-4
REPLACE-THIS-1/-2/-3/-4 总是彼此不同,即使在不同的 URL 之间也是如此,如下所示:
domain.com/folder/random-text-2?A1=A2=A3&A4
domain.com/folder/random-text-2?B1=B2=B3&B4
etc
(注意:“文件夹”始终保持不变)
这就是我想用 REGEX 表达式做的事情:
- 将“REPLACE-THIS-1”替换为“REPLACED-1” 注意:所以基本上当它找到第一个“?”它将用特定的“REPLACED-1”替换“REPLACE-THIS-1”,直到它到达“=”符号
- 用“REPLACED-2”替换“REPLACE-THIS-2” 注意:这个介于第一个“=”和第二个“=”之间
- 将“REPLACE-THIS-3”替换为“REPLACED-3” 注意:这是找到第二个“=”之后的文本
- 将“REPLACE-THIS-4”替换为“REPLACED-4” 注意:问题是“REPLACE-THIS-4”有时也包含“=”符号,但我想替换“REPLACE-THIS-3&”之后的所有文本
注意:REPLACED-1/REPLACED-2/REPLACED-3/REPLACED-4 始终相同,不会改变
我面临的最大问题是所有这些 replace-1/-2-/3/-4 彼此不同(我的意思是所有 URL 都有不同的值),所以如果我能使用一个正则表达式/多个正则表达式公式来替换!
非常感谢!
【问题讨论】:
标签: regex regex-negation regex-group regex-greedy regexp-replace