Ruby量词
示例
量词允许指定重复字符串的计数。
零或一:
/a?/
零个或多个:
/a*/
一个或多个:
/a+/
确切的数字:
/a{2,4}/#Two,threeorfour
/a{2,}/ #Twoormore
/a{,4}/ #Lessthanfour(includingzero)
默认情况下,量词是贪婪的,这意味着它们在进行匹配时会尽可能多地使用字符。通常这是不明显的:
/(?<site>.*) Stack Exchange/ =~ 'Motor Vehicle Maintenance & Repair Stack Exchange'
命名的捕获组site将按预期设置为“机动车维护与修理”。但是,如果“StackExchange”是字符串的可选部分(因为它可能是“StackOverflow”),那么幼稚的解决方案将无法按预期工作:
/(?<site>.*)( Stack Exchange)?/
此版本仍将匹配,但命名的捕获将包括“StackExchange”,因为*贪婪地吃掉了这些字符。解决方案是添加另一个问号以使*懒惰:
/(?<site>.*?)( Stack Exchange)?/
附加?到任何量词都会使其变得懒惰。
热门推荐
10 郭可盈老公生日祝福语简短
11 给老师祝福语简短元旦
12 离别对同事祝福语简短
13 新年英文祝福语简短老师
14 八一祝福语简短情话句子
15 姐妹结婚红包简短祝福语
16 高考给舍友祝福语简短
17 2026年祝福语大全简短
18 简短中秋祝福语朋友结婚