1. <p class="mb-40px">My nick name is Prince and <a href="https://mywebsite.com/bla.html" class="color-gege" target="_new">my real name</a> is beyond magic.</p>
2. <p class="mb-40px">I love my home s< because I stay with my lovely cat.</p>
3. <p class="mb-40px">Because of this book t< I cannot sleep well.</p>
我只想找到有运算符的行<包含在 html 标记中<p class="mb-40px"> </p>
,除了那些包含
在我上面的例子中,输出应该是第 2 行(有 s<) 和第 3 行 ( 有t<)
因此,我使用一个旧的通用公式:(REGION-START)+(.)+\K(FIND REGEX)(?s:(?=.*(REGION-FINAL)))
就我而言,查找:(<p class="mb-40px">)+(.)+\K(\w<)(?s:(?=.*(</p>)))
问题是我的正则表达式也e</a>
从第一行开始查找。我不想找到带有</a>
答案1
- Ctrl+F
- 找什么:
<p class="mb-40px">(?:(?!</p>).)*< .*?</p>
- 用。。。来代替:
\u$1
- 查看 相符
- 查看 环绕
- 查看 正则表达式
- 查看
. matches newline
- Find All in Current Document
解释:
<p class="mb-40px"> # literally
(?:(?!</p>).)* # Tempered Greedy Token
# make sure we don't encountered </p>
< # < and a space
.*? # 0 or more any character, not greedy
</p> # literally
截屏:
答案2
尝试这个:
寻找:(?<p class="mb-40px"><(?!/a)[^>]*</p>)