Home > Article > Backend Development > 求助个正则匹配
怎么匹配link/3445/65这样的形式,数字都是随机的,最后的数字可能没有
link/?([0-9]{1,})/?([0-9]{1,})/?$这样写怎么不对啊,不太懂,求助高手
<?php$subject = "link/3445/65";$pattern = '#link/?([0-9]*)/?([0-9]*)/?$#';preg_match($pattern, $subject, $matches);print_r($matches);?>
$s = "link/3445/644445";$reg = '/link\/([\d]*)\/([\d]*)$/i';preg_match($reg, $s, $a);print_r($a);
首先,你要是不需要获取匹配里面的具体内容,不要到处加括号,括号是用来获取里面内容的。
$reg = '/link\/\d+\/\d*$/i';
$s = "link/3445/644445";$reg = '/link\/([\d]*)\/([\d]*)$/i';preg_match($reg, $s, $a);print_r($a);
$s = "link/3445/644445";$reg = '/link\/([\d]*)\/([\d]*)$/i';preg_match($reg, $s, $a);print_r($a);
学到了,多谢诸位了