在PHP中解析URL类型字符串的正则表达式
我有这样一个字符串: 我想提取 Nnp82q3b844 它的一部分,即/v/和第一个和之间的部分在PHP中解析URL类型字符串的正则表达式,php,regex,Php,Regex,我有这样一个字符串: 我想提取 Nnp82q3b844 它的一部分,即/v/和第一个和之间的部分 在PHP中有没有一种简单易行的方法 是的,他不应该太难找到你的推荐人或者理解我的答案 正则表达式的后面 像这样的事情应该会成功 preg_match('|http://www.youtube.com/v/([^&]+)&hl=en_US&fs=1&|', $url, $match ); var_dump($match[1]); [^&]+基本上意味着不止一个字符不
在PHP中有没有一种简单易行的方法 是的,他不应该太难找到你的推荐人或者理解我的答案 正则表达式的后面 像这样的事情应该会成功
preg_match('|http://www.youtube.com/v/([^&]+)&hl=en_US&fs=1&|', $url, $match );
var_dump($match[1]);
[^&]+
基本上意味着不止一个字符不是“&”,“[]”定义一些字符可能性[^]使其反向,因此括号中的任何字符,+表示一个或多个字符
但是你最好自己看看
我真的建议你好好看看正则表达式,因为它确实可以节省你的工作时间,一旦你了解了它的工作原理,它就非常有用了 您不需要正则表达式。在这种情况下,您可以使用函数来完成这项工作
<?php
$url = 'http://username:password@hostname/path?arg=value#anchor';
print_r(parse_url($url));
echo parse_url($url, PHP_URL_PATH);
?>
阅读文档规则。基本掌握正则表达式并不难:PHP的文档:@Pentuim10:good function,我没有使用它,多亏了你,我今天学到了一些东西@拉格兹,谢谢。在我的个人资料中,查看我的其他答案,这些答案都经过了升级,你可能会发现更多需要学习的地方。
Array
(
[scheme] => http
[host] => hostname
[user] => username
[pass] => password
[path] => /path
[query] => arg=value
[fragment] => anchor
)
/path
$str="http://www.youtube.com/v/Nnp82q3b844&hl=en_US&fs=1&";
$s = parse_url($str);
$t = explode("/", $s["path"]);
print preg_replace("/&.*/","",end($t));