gpt4 book ai didi

c# - 在 C# 中使用什么正则表达式从后面的单词开始匹配(向后匹配...)直到匹配?

转载 作者:太空宇宙 更新时间:2023-11-03 14:38:00 25 4
gpt4 key购买 nike

假设一段 HTML 代码:

<a href="http://google.com">this is a search engine</a>"

如何寻找“engine”并匹配任何东西直到达到“this”?

我知道我能做到:this.*?engine - 但这是从左到右匹配,即“提前”匹配,如果可能的话,我想向后阅读?

最佳答案

您可以反转所有字符串并执行正常搜索:

string text = @"<a href=""http://google.com""> this is a search engine </a>";
string engine = "engine";
string strThis = "this";

new string(
Regex.Match(
new string(text.Reverse().ToArray()),
new string(engine.Reverse().ToArray()) + ".+" + new string(strThis.Reverse().ToArray()))
.Value
.Reverse()
.ToArray())

此外,为了使代码更清晰,您可以在 string 上定义扩展方法,它反转字符串并返回 string而不是 IEnumerable<char> .参见 this供引用。

关于c# - 在 C# 中使用什么正则表达式从后面的单词开始匹配(向后匹配...)直到匹配?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59299902/

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