正则表达式:在模式中匹配模式 - 我想我需要使用 Positive Lookbehinds?

标签 regex lookbehind

我正在尝试使用 RegEx 在模式中查找模式。具体来说,我想要做的是将 URL 捕获到引用中,并在其中搜索最后一个 = 符号之后的所有内容,并将其也捕获。

给定这个字符串

<a href="http://my.domain.com/?s_cid=EM&s_ev9=CMC21892&s_ev10=EM_CMC21892_LC_stuff" style="color: #365EBF:">stuff</a>

我最初会找到

href="http://my.domain.com/?s_cid=EM&s_ev9=CMC21892&s_ev10=EM_CMC21892_LC_stuff"

使用这个正则表达式:href="(https?[^"]*)"

从那里我可以解析实际的字符串(当查看捕获的组时)我正在寻找 EM_CMC21892_LC_stuff 用这个:=[^"=]*$

当我尝试将两者结合起来在一个 RegEx 中完成时,我没有成功。

有什么想法吗?

最佳答案

他是对的,使用正则表达式来解析 HTML 只是自找麻烦。

也就是说,试试 href="http[^"]+=([^"]+?)"

关于正则表达式:在模式中匹配模式 - 我想我需要使用 Positive Lookbehinds?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4857614/

相关文章:

python - 正则表达式查找搜索词并将结果放入另一个数据文件中?

regex - 使用 Select-String 时忽略字符

Ruby 正则表达式不匹配

regex - 前瞻和后向正则表达式

python - python 中负向后视的奇怪行为

java - 正则表达式与java

python - 删除子字符串 pandas, python

javascript - 具有lookbehind 和lookahead 的Lookbehind 替代方案

正则表达式:负后视和否定之间的区别

regex - 你能挽救我的负面回顾例子吗?