正则替换问题 echo preg_replace("/^http:\/\/([^\/]+)\//i","\\1",$url);在PHP中的语法是这样的在 javascript 中才是用 $1 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你可试下这个函数,手册上的:Lucky for U!parse_url(PHP 3, PHP 4 )parse_url -- 解析 URL,返回其组成部分描述array parse_url ( string url)此函数返回一个关联数组,包含现有 URL 的各种组成部分。如果缺少了其中的某一个,则不会为这个组成部分创建数组项。组成部分为: scheme - 如 http host port user pass path query - 在问号 ? 之后 fragment - 在散列符号 # 之后 此函数并 不 意味着给定的 URL 是合法的,它只是将上方列表中的各部分分开。parse_url() 可接受不完整的 URL,并尽量将其解析正确。 注: 此函数对相对路径的 URL 不起作用。 例子 1. parse_url() 示例$ php -r 'print_r( parse_url("http://username:password@hostname/path?arg=value#anchor"));'Array( [scheme] => http [host] => hostname [user] => username [pass] => password [path] => /path [query] => arg=value [fragment] => anchor)$ php -r 'print_r( parse_url("http://invalid_host..name/"));'Array( [scheme] => http [host] => invalid_host..name [path] => /) php从4.1*开始可以使用$i代替\\i,不是这个问题对于parse_url,很可惜,它不是我要的东西:( 很明显是匹配了,不然怎么会把http://community.csdn.net/替换成community.csdn.net你是要取其中的一部分,不是把其中的一部分替换 echo preg_replace("/^http:\/\/([^\/]+?)\/.*/i","$1",$url); 手册上的例子:<?php// 从 URL 中取得主机名preg_match("/^(http:\/\/)?([^\/]+)/i", "http://www.php.net/index.html", $matches);$host = $matches[2];// 从主机名中取得后面两段preg_match("/[^\.\/]+\.[^\.\/]+$/", $host, $matches);echo "domain name is: {$matches[0]}\n";?> 求助关于smarty取数组的问题 求助!! xml schema validation PHP输出png图的问题 代码出错,请大家帮忙看看 关于什么时候使用addslashes 保存图片指纹(一串乱码)到mysql, 求分析 iis问题,帮小妹请求援助,SOS! (*****向斑竹你提个小见意,大家最好都来看看,这个想法好不好!****) php无法连接memcached 请教大家一个关于用php压缩文件的问题?? windows下配置php的疑惑,高手帮忙解答????
(PHP 3, PHP 4 )parse_url -- 解析 URL,返回其组成部分
描述
array parse_url ( string url)
此函数返回一个关联数组,包含现有 URL 的各种组成部分。如果缺少了其中的某一个,则不会为这个组成部分创建数组项。组成部分为:
scheme - 如 http host port user pass path query - 在问号 ? 之后 fragment - 在散列符号 # 之后
此函数并 不 意味着给定的 URL 是合法的,它只是将上方列表中的各部分分开。parse_url() 可接受不完整的 URL,并尽量将其解析正确。 注: 此函数对相对路径的 URL 不起作用。 例子 1. parse_url() 示例$ php -r 'print_r( parse_url("http://username:password@hostname/path?arg=value#anchor"));'
Array
(
[scheme] => http
[host] => hostname
[user] => username
[pass] => password
[path] => /path
[query] => arg=value
[fragment] => anchor
)$ php -r 'print_r( parse_url("http://invalid_host..name/"));'
Array
(
[scheme] => http
[host] => invalid_host..name
[path] => /
)
对于parse_url,很可惜,它不是我要的东西:(
你是要取其中的一部分,不是把其中的一部分替换
// 从 URL 中取得主机名
preg_match("/^(http:\/\/)?([^\/]+)/i",
"http://www.php.net/index.html", $matches);
$host = $matches[2];// 从主机名中取得后面两段
preg_match("/[^\.\/]+\.[^\.\/]+$/", $host, $matches);
echo "domain name is: {$matches[0]}\n";
?>