Regex查找段落中的第一个事件

本文关键字:第一个 事件 段落中 查找 Regex | 更新日期: 2023-09-27 17:50:48

我有一个模式">你好,我是X,我父亲的名字是Y。我的爱好是玩等等。">

我的目标是匹配模式">你好,我是X和我的"。

我试过使用Regex,但它总是选择第二个"我的"。

即"你好,我是X,我父亲的名字是Y。我">

我的Regex是(Hello)(.*)(My?)

我也试过(Hello)(.*)(My?{0}),但仍然不起作用。

你能帮我吗?

Regex查找段落中的第一个事件

您需要使*量词lazy:

(Hello)(.*?)(My)

.*?将尽可能少地匹配字符(与尽可能多地匹配的.*相反(。

使用非贪婪方法尝试此正则表达式。

(Hello.*?My)

尝试这个

Hello(.*?)(?=My)('w{2})

你有一只贪婪的恐龙,但?会让它变成一只懒惰的恐龙

这是一只坏恐龙,它吃所有挡住它去路的东西.*和.+只是这样它会吃掉所有贪婪的

坏贪婪的恐龙会吃掉所有东西,然后尝试匹配。它会尝试搜索My,但他找不到,因为他已经吃了它们。所以,慢慢地,他会开始吐信。。。。慢速地除非他找到CCD_ 8然后找到M。所以它匹配你字符串中的最后一个My。

当我们让它变得懒惰时,它不会吃掉整串,只会满足于找到第一个My。他会吃掉它然后睡觉:(