欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

php获取指定字符之间内容实现代码

程序员文章站 2024-04-05 15:24:42
...
php获取指定字符之间内容实现代码,这是一个获取字符串中两个子串之间的子串,如从字符串www.hzhuti.com中获取hzhuti子串,就让这个PHP函数来实现吧,

代码如下:

代码如下 复制代码
function get_between($input, $start, $end) {

$substr = substr($input, strlen($start)+strpos($input, $start),

(strlen($input) - strpos($input, $end))*(-1));

return $substr;

}

$string = "www.hzhuti.com";

$start = "www.";

$end = ".com";

echo get_between($string, $start, $end); // output:hzhuti

不过这个函数有个局限,就是$start子串和$end子串在整个串中只能出现一次。请看下面的例子:

代码如下 复制代码
$string = "http://www.hzhuti.com/";

$start = "http://";

$end = "/";

很明显我想获取这个标准URL的域名部分,由于$end子串在整个串中不是唯一的,所以就会出现问题,请使用时务必注意!


NAS/NMS COMPSITE (NasdaqSC:^IXIC) Quote data by ReutersIndex Value:2,030.08Trade Time:5:16PM ETChange: 35.40 (1.71%)Prev Close:2,065.48Open:2,072.95Day 's Range:2,026.20 - 2,073.4252wk Range:1,359.32 - 2,153.831d

这样的一个字符串,我要截取Index Value:和Trade Time:之间的数据2,030.08,怎么截取?我要通用的方法

代码

代码如下 复制代码

$str= "NAS/NMS COMPSITE (NasdaqSC:^IXIC) Quote data by ReutersIndex Value:2,030.08Trade Time:5:16PM ETChange: 35.40 (1.71%)Prev Close:2,065.48Open:2,072.95Day 's Range:2,026.20 - 2,073.4252wk Range:1,359.32 - 2,153.831d ";
preg_match( " 'Index Value:(.+)Trade Time 's ",$str,$arr);
if($arr){
echo $arr[ "1 "];
}
?>