0

我使用 regexpal.com 针对 Wordpress 试图比较的数据测试我的正则表达式,但它失败了,看看这个并告诉我你是否发现问题?

正则表达式

"#^json/(.+?)/?([a-zA-Z0-9]*)?$#"

匹配的内容

json/trips

这些作品,前一个没有

json/trips/0
json/trips/13
json/fullticket/9805048001130122361809

如果我在正则表达式中尝试所有这些,它们都可以工作,但是在 wordpress 中,只有不包含我要获取的元素的 id 的那个会失败,其他的可以正常工作。

有趣的是,$matches 返回:

array
0 => string 'json/trips' (length=10)
1 => string 't' (length=1)
2 => string 'rips' (length=4)
4

2 回答 2

1

试试这个正则表达式:

#^json/([^/]+)/?([a-zA-Z0-9]*)?$#

输出 :

Array
(
    [0] => json/trips
    [1] => trips
    [2] => 
)
于 2013-01-29T10:42:19.510 回答
0

稍微调整一下 wordpress 重写规则后的答案是:

data/([^/]+)(/([a-zA-Z0-9\-]*))?$

注意:我在新场景中将 json 更改为数据,所以我不会弄乱自定义帖子类型规则

于 2013-01-29T10:45:33.537 回答