gpt4 book ai didi

html - Regex - 匹配多行 HTML 代码块

转载 作者:行者123 更新时间:2023-12-02 05:10:11 26 4
gpt4 key购买 nike

我的正则表达式有问题。我需要匹配 HTML block 。

示例 block 在这里:

<tr class="tr-list " data-id="XX">
<td class="ip-img"><div class="gun-icon"></div><img src="https://example.com/images/stories/HCP/HCP_5.jpg"/></td>
<td class="ip-name ip-sort">Hotel Complex Project</td>
<td class="ip-price ip-sort">297.00</td>
<td class="ip-earnings ip-sort">43</td>
<td class="ip-shares ip-sort">86</td>
<td class="ip-status {'sorter':'currency'}"><img
src="/img/assets/arrow1.png" title="0.989990234375"/></td>
<td class="ip-blank-right"></td>
</tr>

这些 HTML block 中的每个 block 都应该分别匹配,然后我想从中提取其他数据(例如 ip-name、ip-price、ip-earnings..)。

但我当前的正则表达式匹配所有内容,直到“(?=)”部分不再为真: http://regexhero.net/tester/?id=2b491d15-ee83-4dc7-8fe9-62e624945dcf

我需要更改什么才能使每个 block 都匹配?

您好! :)

PS.: 希望大家能理解我的意思...

最佳答案

这应该得到所有的 tr 行:

<tr class="tr-list[\s\S]+?</tr>

这应该得到所有 tr 行和列的匹配组:

<tr class="tr-list[^<]*?<td class="ip-img">(.*?)</td>\s*<td class="ip-name.*?">(.*?)</td>\s*<td class="ip-price.*?">(.*?)</td>\s*<td class="ip-earnings.*?">(.*?)</td>\s*<td class="ip-shares.*?">(.*?)</td>\s*<td class="ip-status.*?">([\s\S]*?)</td>[\s\S]+?</tr>

关于html - Regex - 匹配多行 HTML 代码块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15602747/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com