程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> php獲取指定字符之間內容實現代碼

php獲取指定字符之間內容實現代碼

編輯:關於PHP編程

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,怎麼截取?我要通用的方法

代碼

 代碼如下 復制代碼

<?php
$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 "];
}
?>

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved