Php Regex解析megavideo URL

Php Regex解析megavideo URL,php,regex,string-parsing,Php,Regex,String Parsing,我正在尝试编写一个正则表达式来解析php脚本的此url: 要获取此信息:B4PZHP0N 有人能帮忙吗?提前感谢。试试这个正则表达式: /^http:\/\/www\.megavideo\.com\/v\/(.{8}).*$/ (错误已更正) 另请参见my或my。尝试以下正则表达式: /^http:\/\/www\.megavideo\.com\/v\/(.{8}).*$/ (错误已更正) 另请参见my或my。因为您使用的是PHP,只需使用和: 演示:既然您使用的是PHP,只需使用和: 演

我正在尝试编写一个正则表达式来解析php脚本的此url:

要获取此信息:B4PZHP0N

有人能帮忙吗?提前感谢。

试试这个正则表达式:

/^http:\/\/www\.megavideo\.com\/v\/(.{8}).*$/
(错误已更正)

另请参见my或my。

尝试以下正则表达式:

/^http:\/\/www\.megavideo\.com\/v\/(.{8}).*$/
(错误已更正)


另请参见my或my。

因为您使用的是PHP,只需使用和:


演示:

既然您使用的是PHP,只需使用和:

演示:

/([^:.\/]+)[a-f0-9]{32}/

因此,如果匹配,B4PZHP0N位于捕获缓冲区1中,即:$1

/([^:.\/]+)[a-f0-9]{32}/


如果匹配,B4PZHP0N在捕获缓冲区1中,即:$1。 所以id可以在/v/、?v=或&v之后=

$url = 'http://www.megavideo.com/v/B4PZHP0Nb2e8a877f8378e778446318596415780';
foreach (array('/v/', '?v=', '&v=') as $k)
{
    $pos = strpos($url, $k);
    if ($pos>0)
    {
        $pos += strlen($k);
        break;
    }   
}   
if (!$pos)
    die("not found");
$id = substr($url, $pos, 8);
die($id);

我做了一些类似的事情,但更一般一些。 所以id可以在/v/、?v=或&v之后=

$url = 'http://www.megavideo.com/v/B4PZHP0Nb2e8a877f8378e778446318596415780';
foreach (array('/v/', '?v=', '&v=') as $k)
{
    $pos = strpos($url, $k);
    if ($pos>0)
    {
        $pos += strlen($k);
        break;
    }   
}   
if (!$pos)
    die("not found");
$id = substr($url, $pos, 8);
die($id);

你应该使用你的语言的子字符串函数。你应该使用你的语言的子字符串函数。