My Regex:
(?<=(?i)start\s+date\s+)([0-9]{2}[\.]{1}[0-9]{2}[\.]{1}[0-9]{4})
我正在尝试匹配一个日期,该日期前面有“开始日期”字样,但只希望返回日期。
所以例如'开始日期01.01.2000'的匹配应该返回'01 .01.2000',我知道我很接近但我似乎无法将表达式的第一部分包含在结果中。任何帮助非常感谢
答案 0 :(得分:2)
(?<=start\sdate)\s+([0-9]{2}[\.]{1}[0-9]{2}[\.]{1}[0-9]{4})
会奏效。我认为问题是用\ s +,可变长度看后面。大多数正则表达式引擎都没有实现可变长度的外观。
答案 1 :(得分:0)
试试这个:
(?<=start\sdate\s)([0-9]{2}\.[0-9]{2}\.[0-9]{4})
答案 2 :(得分:0)
如果您一直在寻找与start date ##.##.####
匹配的字符串,则可以这样做:
start date ([0-9]{2}\.[0-9]{2}\.[0-9]{4})
然而在这种情况下,你也可以简单地做
substr($string, strrpos($string, "start date ") + 11, 10);