Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex 带正则表达式的Yii url规则_Regex_Yii_Rules - Fatal编程技术网

Regex 带正则表达式的Yii url规则

Regex 带正则表达式的Yii url规则,regex,yii,rules,Regex,Yii,Rules,我有一条规则: 'employee/renewOffer/<id_offer:\d+>;<title:.+>' => 'company/renewOffer', 'employee/renewOffer/;'=>'公司/更新报价', 这与任何单个报价有关,这非常有效,但如果选择多个报价,该规则应该是什么样的。链接将如下所示(以逗号分隔的ID): 根据ndn的建议,您可以通过将规则中的\d+替换为[\d,]+来允许使用逗号。换句话说,将规则更改为: 'emplo

我有一条规则:

'employee/renewOffer/<id_offer:\d+>;<title:.+>' => 'company/renewOffer',
'employee/renewOffer/;'=>'公司/更新报价',

这与任何单个报价有关,这非常有效,但如果选择多个报价,该规则应该是什么样的。链接将如下所示(以逗号分隔的ID):


根据ndn的建议,您可以通过将规则中的
\d+
替换为
[\d,]+
来允许使用逗号。换句话说,将规则更改为:

'employee/renewOffer/<id_offer:[\d,]+>;<title:.+>' => 'company/renewOffer',

+
后面的
只会使
+
不贪婪。这意味着它将尽可能少地捕获,而不是尽可能多地捕获。

根据ndn的建议,您可以通过将规则中的
\d+
替换为
[\d,]+
来允许使用逗号。换句话说,将规则更改为:

'employee/renewOffer/<id_offer:[\d,]+>;<title:.+>' => 'company/renewOffer',

+
后面的
只会使
+
不贪婪。这意味着它将捕获尽可能少的内容,而不是尽可能多的内容。

我不知道你在问什么,但我猜可以通过将
\d+
更改为
[\d,]+
来实现。我认为@ndn可能是正确的。或者,更宽容一点,
[^;]+
或者干脆
+?
。谢谢你,很抱歉我没有说得太具体。我试着解释我的意思-我有第一个URL()和我写的规则,这很好。但我必须输入多个ID(第二个URL),而不是一个ID。根据同样的规则,我得到404错误,因为我认为逗号。希望我现在更清楚了你试过@ndn的建议了吗?我对Yii及其规则一点也不熟悉,但基于示例,我认为这会起作用。嗯,我会更早尝试,但没有括号[],然后出现错误,现在我再试一次,这是正确的!谢谢你,我不知道你在问什么,但我猜把
\d+
改成
[\d,]+
可以实现。我想@ndn可能是对的。或者,更宽容一点,
[^;]+
或者干脆
+?
。谢谢你,很抱歉我没有说得太具体。我试着解释我的意思-我有第一个URL()和我写的规则,这很好。但我必须输入多个ID(第二个URL),而不是一个ID。根据同样的规则,我得到404错误,因为我认为逗号。希望我现在更清楚了你试过@ndn的建议了吗?我对Yii及其规则一点也不熟悉,但基于示例,我认为这会起作用。嗯,我会更早尝试,但没有括号[],然后出现错误,现在我再试一次,这是正确的!非常感谢您感谢ndt为您提供的帮助,获得了很好的反馈谢谢您并感谢ndt为您提供的帮助,获得了很好的反馈