ruby – 使用/.*?/的利润是多少?

前端之家收集整理的这篇文章主要介绍了ruby – 使用/.*?/的利润是多少?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在一些Rails代码(黄瓜功能的步骤定义,javascripts,rails_admin gem)我发现这个正则表达式的部分:
string =~ /some regexp.+rules should match "(.*?)"/i

我有一些正则表达式的知识,我知道*和?符号是相似的,但星号意味着零和更多,问号的手段可能存在或不可能.

因此,使用符号组附近的问号使其在被测试的短语内不需要.什么是…好的…在不需要的组合附近使用它的技巧(跳过要求是使用星号afaik)?

解决方法

在量词之后(如*),具有不同的含义,使其成为“不客气”.所以默认情况下*尽可能地消耗*?比赛尽可能少.

在您的具体情况下,这与以下字符串相关:

some regexp rules should match "some string" or "another"

没有问号,正则表达式匹配完整的字符串(因为.*可以像其他任何东西一样消耗“)和一些字符串”或“另一个被捕获.使用问号,匹配将尽快停止(所以后…一些字符串“),并将捕获只有一些字符串.

Further reading.

猜你在找的Ruby相关文章