gpt4 book ai didi

html - 修改现有正则表达式以检索索引

转载 作者:行者123 更新时间:2023-11-28 03:16:30 26 4
gpt4 key购买 nike

我有一个 html,但几乎没有索引。示例如下

this is first sample index <!-- @@struct1_s§var1-->19.5.1<!--Index--> and this is required

this is second sample index <!-- @@struct2_s§var2-->19.5.2<!--Index--> - this is extension to the sample index <!-- @@struct3_s§var3-->19.5.3<!--Index--> and this is required.

我使用正则表达式

"<!--\s?@{2}[\.\w]*§[\.\w\[.\]]+-->[\d]+\.[\d]+\.[\d]+<!--Index-->"

所以如果我完全解析 html 的上述部分,我将得到匹配项

<!-- @@struct1_s§var1-->19.5.1<!--Index-->
<!-- @@struct2_s§var2-->19.5.2<!--Index-->
<!-- @@struct3_s§var3-->19.5.3<!--Index-->

现在我想更改我的正则表达式,这样如果存在 - 我想检索整个索引

因此,如果我完全解析 html 的上述部分,我应该得到匹配的

<!-- @@struct1_s§var1-->19.5.1<!--Index-->
<!-- @@struct2_s§var2-->19.5.2<!--Index--> - <!-- @@struct3_s§var3-->19.5.3<!--Index-->

我正在尝试使用这个表达式,但它还会检索同一行中出现的其他字符

regEx.Pattern = "<!--\s?@{2}[\.\w]*§[\.\w\[.\]]+-->[\d]+\.[\d]+\.[\d]+<!--Index-->[-\s?]?[<!--\s?@{2}[\.\w]*§[\.\w\[.\]]+-->[\d]+\.[\d]+\.[\d]+<!--Index-->]?"

如果有人可以帮我解决这个问题。

最佳答案

一个更简单的版本可以在三场比赛中完成;它对上面的测试用例做了你想要的:

<!--\s?@{2}[\.\w]*§[\.\w\[.\]]+-->\d+\.\d+\.\d+<!--Index-->( - )?

你可以在两次匹配中做你想做的,但你必须匹配比你想要的更多,然后使用第一个和第二个捕获组来获得你想要的匹配部分(通常是 $1 和 $2)。

(<!--\s?@{2}[\.\w]*§[\.\w\[.\]]+-->\d+\.\d+\.\d+<!--Index-->(?: - )?)(?:.*(<!--\s?@{2}[\.\w]*§[\.\w\[.\]]+-->\d+\.\d+\.\d+<!--Index-->))?

如果可以的话,第一个更好。

关于html - 修改现有正则表达式以检索索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27402085/

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