gpt4 book ai didi

regex - RegEx多行结果-Netbeans 7.2查找和替换功能

转载 作者:行者123 更新时间:2023-12-04 13:33:00 24 4
gpt4 key购买 nike

我正在使用Netbeans 7.2中的“查找”工具,并且正在寻找一个使我能够收集多行结果的正则表达式。

我想在以下示例正则表达式上使用示例 Html代码:

<tr>
<td>
<label>some label</label><span>*</span>
</td>
<td>
<label>some label</label><span>*</span>
<label>some label</label>
<label>some label</label>
</td>
</tr>

基本上,我想收集任何 <td>标记,包括它的内容和结束标记 </td>

在上面的示例中,我的第一个结果应该是:
<td>
<label>some label</label><span>*</span>
</td>

而我的第二个结果应该是:
<td>
<label>some label</label><span>*</span>
<label>some label</label>
<label>some label</label>
</td>

我尝试了许多不同的正则表达式,它们将选择 <td>的开头和下一行(如果 <td>的内容在多行中)。

例子 : <td>.*(.*\s*).*
但是我希望获得一个正则表达式,无论它们包含多少个 <td>标签,它都可以提取每个 <label>标签及其内容。

最佳答案

您必须使用s修饰符将新行与点匹配,我不知道在NetBeans中可以在何处进行此操作,但是您可以使用(?s)来开始表达式以启用它。

因此,匹配<td ...> ... </td>的正则表达式将类似于(?s)(<td[^>]*>.*?<\/td>)

说明:

  • (?s):也使点匹配换行
  • <td:匹配<td
  • [^>]*:匹配除>以外的所有其他内容0次或更多次
  • >:匹配>
  • .*?:匹配0次或多次不满意的所有内容(直到在这种情况下找到</td>为止)
  • <\/td>:我什至还要解释o_o吗?

  • Online demo

    关于regex - RegEx多行结果-Netbeans 7.2查找和替换功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16821350/

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