我有一个字符串,我从数据库的类别表中取消。事情是,字符串格式如下:忽略某些字符的正则表达式帮助
Parent Category/Sub category/Category
Parent Category/Category
我只是想得到的是“类别”的名称。
有没有人知道我可以如何使用正则表达式忽略到最后一个“/”的字符,所以我只能得到“类别”的名称?
*编辑:我使用的方式。什么是最好的PHP正则表达式函数使用?
感谢您的回复!
我有一个字符串,我从数据库的类别表中取消。事情是,字符串格式如下:忽略某些字符的正则表达式帮助
Parent Category/Sub category/Category
Parent Category/Category
我只是想得到的是“类别”的名称。
有没有人知道我可以如何使用正则表达式忽略到最后一个“/”的字符,所以我只能得到“类别”的名称?
*编辑:我使用的方式。什么是最好的PHP正则表达式函数使用?
感谢您的回复!
像这样的正则表达式将捕捉一切从最后/
到年底,/
后忽略空格:
更新:我有此PHP的解决方案。我不是一个PHP的专家,但我认为这将工作:
if (preg_match('/\/\s*([^\/]+)$/',$string, $matches))
{
echo $matches[1];
}
请注意,这个正则表达式需要有多个级别(字符串中至少有一个'/')。如果您的数据可能只有一个类别,请从模式的开头删除'\ /'。 – dan1111
你可以这样做:
/([^\/]*)$/
这就需要正则表达式来仅在字符串的结尾匹配(因为$
代表字符串的结尾)。而在此之前的东西只是一个字符串,不是/
,尽可能长。
您可能需要修整结果,因为它将包含/
之后的空格。
您是否使用任何特定语言? – npinti
我对这个特定的方法使用PHP – kevin
psst:'basename($ category);'这也被问了一百次左右,这就是为什么我不回答它。你也许想看看http://www.php.net/manual/en/function.strrchr.php – hakre