我有字符串http://mycloud.net/4d4bf89da2e38.jpg
我想要4d4bf89da2e38.jpg
我如何使用php函数或regexp获取此功能。
请建议。
谢谢
答案 0 :(得分:8)
在这种情况下,使用basename()
可能会更好。但要回答您的问题标题,您可以使用substr()
从一段文本中获取子字符串。
basename('http://mycloud.net/4d4bf89da2e38.jpg'); // returns 4d4bf89da2e38.jpg
答案 1 :(得分:4)
$name = pathinfo('http://mycloud.net/4d4bf89da2e38.jpg', PATHINFO_BASENAME);
答案 2 :(得分:1)
[^/]*$
会在最后一次斜线后给你一切。
在PHP中:
if (preg_match('%[^/]*$%', $subject, $regs)) {
$result = $regs[0];
} else {
$result = "";
}
但是没有可用于处理文件路径的库吗?
答案 3 :(得分:1)
使用basename()函数:http://php.net/manual/en/function.basename.php。 它可能比regexp更快,而且它将是跨平台的
答案 4 :(得分:0)
您不需要这些功能,只需拆分字符串。
$卡德纳=的 'http://mycloud.net/4d4bf89da2e38.jpg';
$ VEC =爆炸( “/”,$卡德纳);
$名称= array_pop($ VEC);
并且您在变量$ name
中有值答案 5 :(得分:0)
或者你把sjmg的答案放在一行;)
$name = array_pop(explode('/','http://mycloud.net/4d4bf89da2e38.jpg'));