正则表达式:反转匹配顺序

发布于 2024-12-09 02:07:32 字数 447 浏览 0 评论 0原文

我有这个片段来执行正则表达式搜索:

public IEnumerable<MyMatch> GetMyMatches() 
{
   Match m = myRegex.Match(Text, offset);
   if (m != null && m.Success && m.Value != null && m.Value.Length > 0)
   {
      offset = m.Index+m.Length;
      yield return new MyMatch() { Match=m, SomeFurtherInformation=... };
   } else
   yield break;
}

如您所见,我遍历了文本中的所有出现情况。

但如何反转搜索方向呢?

感谢您的帮助

i have this snippet to perform a regex-search:

public IEnumerable<MyMatch> GetMyMatches() 
{
   Match m = myRegex.Match(Text, offset);
   if (m != null && m.Success && m.Value != null && m.Value.Length > 0)
   {
      offset = m.Index+m.Length;
      yield return new MyMatch() { Match=m, SomeFurtherInformation=... };
   } else
   yield break;
}

As you can see, i walk down all occourences in my text.

but how to inverse the search-direction?

thanks for your help

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

单身情人 2024-12-16 02:07:32

您可以使用“匹配”,然后执行“反向'返回的 IEnumerable。

You could use 'Matches' then do a 'Reverse' on the returned IEnumerable.

独孤求败 2024-12-16 02:07:32

中有一个 RightToLeft 选项RegexOptions - 您可能还需要调整您的表达式,但这将为您“向后”搜索。

There's a RightToLeft option in RegexOptions - you may have to adjust your expression too, but that will search "backwards" for you.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文