【发布时间】:2017-10-20 15:57:58
【问题描述】:
我有以下几点:
1.5 5 tablespoon cream
½ (1 cup) heavy cream
¼ – ½ teaspoon cream
1 tablespoon cream
^(?:[\-\.\/\s]*[\d↉½⅓⅔¼¾⅕⅖⅗⅘⅙⅚⅐⅛⅜⅝⅞⅑⅒⅟])+
我试图弄清楚为什么 ¼ – ½ 不匹配,我在非捕获组中有一个转义的连字符。
我的尝试:
^(?:[\-\.\/\s\W]*[\d↉½⅓⅔¼¾⅕⅖⅗⅘⅙⅚⅐⅛⅜⅝⅞⅑⅒⅟])+ 但它与½ (1 匹配,我只想要包含点、连字符和空格的所有内容。
带有标记非单词字符的\W 的负前瞻,它准确地捕获了我想要实现的目标,但是负前瞻并没有阻止1 (1 被捕获,这是我尝试过的: ^(?:[\-\.\/\s\W]*(?!\()*[\d↉½⅓⅔¼¾⅕⅖⅗⅘⅙⅚⅐⅛⅜⅝⅞⅑⅒⅟])+
【问题讨论】: