我有一个字符串$subDay
,如下所示:
Checkin 03:35 OL 270 DRS-ZRH 04:25-05:45 HSC, KRG, LEM, JOA OL 271 ZRH-DRS 06:45-08:15 HSC, KRG, LEM, JOA Checkout 08:45
我想用这个命令添加一个新行(\ n):
$subDay = preg_replace("/(Checkin [12][0-9]:[12][0-9])/", "$1\n", $subDay);
我用这个RegexTester测试了它,我的RegEx似乎有效,但没有任何反应。
为什么?
答案 0 :(得分:4)
字符类[12]
仅匹配1或2.它与03:35
中的0不匹配。试试这个:
/(Checkin [012][0-9]:[0-5][0-9])/
答案 1 :(得分:0)
/(Checkin [012]{1}[0-9]{1}:[0-5]{1}[0-9]{1})/
可以改进,因为目前它将匹配29,但如果你需要,你可以进一步使用
答案 2 :(得分:0)
最后我使用了这个RegEx:
/(Checkin ([01]{1}[0-9]{1}|[2]{1}[0-3]):[0-5]{1}[0-9]{1})/
它只匹配两位数的有效时间。