【发布时间】:2019-12-15 06:48:30
【问题描述】:
我尝试使用正则表达式 (php) 来匹配结尾的罗马数字。为简单起见,请考虑以下示例:
$str="Olympic III";
preg_match("#^(.*)(III|II|I)$#",$str,$rep);
print_r($rep);
这只会匹配一个“I”。正确的答案是我使用不贪婪的“U”修饰符。但为什么?正则表达式不使用我提供的顺序吗(在尝试“II”或“I”之前先尝试“III”)?
【问题讨论】:
-
试试
/I{1,3}/。
标签: php regex preg-match