UltraPung 发表于 2022-2-4 16:22:34

求正则表达式 或 软件 来实现这个效果

求正则表达式 查找 替换 的写法
或 用什么软件
来实现这个效果
谢谢!

/:素材示例:/
</>
XXX
<link rel="stylesheet" type="text/css"随机字符<div class="entry top" id="A">随机字符<div class="entry top" id="B">随机字符<div class="entry top" id="C">随机字符<div class="entry top" id="D">随机字符
</>



/:想实现效果:/
</>
XXX
<link rel="stylesheet" type="text/css"随机字符<div class="entry top" id="A">随机字符<div class="entry top" id="B">随机字符<div class="entry top" id="C">随机字符<div class="entry top" id="D">随机字符
</>
A
@@@LINK=XXX
</>
B
@@@LINK=XXX
</>
C
@@@LINK=XXX
</>
D
@@@LINK=XXX
</>

sxingbai 发表于 2022-2-4 19:42:57

这种循环问题,单用正则比较吃力。可以变通一下,先把(</>\r\n(.+)\r\n).*?id="()"(.+)替换为\1\4</>\r\n\</>\r\n\3\r\n@@@LINK=\2,直到无可替换。后续动作楼主肯定没问题。

mikeee 发表于 2022-2-5 18:31:55

本帖最后由 mikeee 于 2022-2-5 18:34 编辑


(<\/>[\r\n]+)(XXX)([\s\S]*?)(id)(=")()([\s\S]*)(<\/>)
替换 n 次 (n = 4)
\1\2\3\4xxx\5\6\7\8\n\6\n@@@LINK=\2\n</>\n
再将 idxxx 替换成 id
适应 python 类正则引擎(例如 notepad++,亲测可行)

js类正则引擎(例如 vscode)将 \x (x=1,...,7)换成 $x

UltraPung 发表于 2022-2-9 22:50:17

sxingbai 发表于 2022-2-4 19:42
这种循环问题,单用正则比较吃力。可以变通一下,先把(\r\n(.+)\r\n).*?id="()"(.+)替换为\1\4\r\n\\r ...

能行,谢谢

UltraPung 发表于 2022-2-9 22:50:41

mikeee 发表于 2022-2-5 18:31


替换 n 次 (n = 4)


很好使,谢谢
页: [1]
查看完整版本: 求正则表达式 或 软件 来实现这个效果