我遇到了一个小问题。我需要选择并删除所有数字以及_
html 标签
<p class="BEST"><em>a Создание всего, что только когда человек __2_2160_____</em></p>
<p class="BEST"><em>оставляет _за собой 3456 метафизическое __значение судьбы, 566_ которая проходит проверку времени_</em></p>
我的正则表达式似乎不起作用:
寻找:(?:<p class="BEST"|\G(?!^))[_]\d+\K\d+[_](?=.*?</p>)
输出:
<p class="BEST"><em>a Создание всего, что только когда человек</em></p>
<p class="BEST"><em>оставляет за собой метафизическое значение судьбы, которая проходит проверку времени</em></p>
答案1
以下是一种方法:
- Ctrl+H
- 找什么:
(?:<p class="BEST"|\G(?!^)).*?\K[_\d]+(?=.*?</p>)
- 用。。。来代替:
LEAVE EMPTY
- 查看 相符
- 查看 环绕
- 查看 正则表达式
- 取消选中
. matches newline
- Replace all
解释:
(?: # non capture group
<p class="BEST" # literally
| # OR
\G(?!^) # restart from last match position if not at the beginning
) # end group
.*? # 0 or more any character, not greedy
\K # forget all we have seen until this position
[_\d]+ # 1 or more underscore or digit
(?=.*?</p>) # positive lookahead, make sure we have end tag after
截图(之前):
截图(之后):