如何在PHP中使用正则表达式在字符串中的斜杠后获取int

时间:2013-03-20 22:45:11

标签: php regex

我尝试在PHP中创建一个代码,该代码在给定字符串中的正斜杠后获取主题ID。但是我遇到的问题是它什么都没有返回,我怎么能让它返回int?

echo  preg_match('/([^/]+)/', 'Learning-English/478', $discussion_id);
echo $discussion_id;

这是一个在线论坛,谢谢你的帮助;非常感谢。如果您需要更多信息,请随时发表评论。

2 个答案:

答案 0 :(得分:2)

preg_match("#/(\d+)$#", 'Learning-English/478', $discussion_id);

这对你有用。

打印id(匹配号码);你需要回应$discussion_id[1]

这是一个有效的link


对于较新的字符串,您不需要字符串结束匹配($)。因此,正则表达式将是:

preg_match("#/(\d+)#", 'Looking-for-Pen-Pals/1161&t=viewDiscussion', $discussion_id);
echo $discussion_id[1];

答案 1 :(得分:1)

您可以像这样使用explode()

$arr = explode('/',$string);
$discussion_id = $arr[count($arr)-1];

这将拆分你的字符串然后给你最后一部分。