我正在为一个网站构建路由器。用户页面的奇特URL是u/user_name/user_id
,其中u
符号化用户, user_name
和 user_name
分别是存储在数据库中的用户的用户名(字母数字值(和用户ID(数值(。我匹配此类 uri 的正则表达式是 /u'/[A-Za-z0-9]'/'d/
.当我将这个表达式与匹配u/foo/9
传递给preg_match
时,我得到的返回值为 0。
但是当表达式被/u'/[A-Za-z0-9]/
(这不是我想要的(并且与匹配u/foo
一起传递时,preg_match
返回一个正值 1。
我做错了什么,或者我的表情有问题。任何帮助将不胜感激
您错过了字符串中有多个字母数字字符和多个数字。使用此表达式:
/u'/[A-Za-z0-9]+'/'d+/