正则表达式长度(0)或(7-50)

时间:2015-06-03 15:29:27

标签: regex wordpress wordpress-rest-api

这里的正则表达式是使用wp-rest-api enpoints regex所以我所拥有的是

$routes['/dn/settings/update/(?P<password>.{7,50})/(?P<newsletter>\d)'] = array(
    array( array( $this, 'settings_update'), WP_JSON_Server::ALLMETHODS ),
);

我需要帮助的部分是(?P<password>.{7,50})

现在它接受7-50个字符的密码,但如果没有提交密码,我也希望更新能够正常工作。即。 “/ DN /设置/更新// 1”

如何在不使用.{0||7,50}的情况下执行.{0, 50}之类的操作?

1 个答案:

答案 0 :(得分:4)

只需将整个模式设为可选:

$routes['/dn/settings/update/(?P<password>.{7,50})?/(?P<newsletter>\d)'] = array(
    array( array( $this, 'settings_update'), WP_JSON_Server::ALLMETHODS ),
);