<?php/**
燕十八 公益php培訓
學習社群:www.zixue.it **/
//擷取子字串
// substr
/*string substr ( string $string , int $start [, int $length ] )
$string: 待擷取的長字串
start: 擷取開始的位置【理解為代表方向 ,從右向左】
$length: 正數時代表擷取的長度,負數時代表擷取結束的位置
*/$str = 'abcdefg';
/*當第3個引數,不指定時,擷取到字串的"結尾"
*/echo
substr($str,3),'
'; //
defg
/*經理說:把字串末尾的3個字元擷取出來
又怎麼辦呢?
*///
辦法1,先算出length,再-3
$str = 'abcdefg';
$start = strlen($str) - 3;
echo
substr($str,$start),'
';//
辦法2,起始位置不走左數,而是呢,填負數,從右往左數.
echo
substr($str,-3),'
';/*
*經理又要求:
專門擷取字串開頭的3個字元
分析:start 應該填0
擷取長度: length 應該填3**/
//第3個引數為正數時,代表要擷取的長度
$str = 'abcdefghijk';
echo
substr($str,0,3),'
';/*
*經理又要求:
專門擷取除了頭3位,和尾巴3位,
即,中間的那些字串.
分析:start應該是3
length,如何代表長度,多長呢? 不一定,因為字串的長度不好算.
這時,可以把length寫成負數.
如果length是負數,不代表長度,代表文字擷取的結束位置**/
$str = '123456789';
echo
substr($str,3,-3),'
';//
至此,經理沒能刁難你,完成任務/**
這時,我們對經理說:"還需要截什麼嗎? 中文我也能截,來點任務吧"
substr 它是按位元組來操作的,不考慮什麼編碼.**/
$str = '中華民族'; //
我的檔案是utf-8編碼的.
echo
substr($str,6,3),'
';/*
經理說:"小樣兒,牛叉是嗎"
來截這一段"lily你的**report給我,中午我們有個meeting,一會帶你吃kfc"
*/$str = "lily你的**report給我,中午我們有個meeting,一會帶你吃kfc";
echo
substr($str,0,6),'ab';
//按位元組截,'lily你'是7個位元組才完成
// '你'的3個位元組,被截了2個,出了問題.
?>
Js字串擷取substring與substr區別
一 substsubstring 該方法可以有乙個引數也可以有兩個引數。1 乙個引數 示例 var str olive str.substring 3 結果 ve 說明 當substring只有乙個引數時,引數表示從字串的第幾位開始擷取,直擷取到字串結尾。2 兩個引數 示例 var str oliv...
js字串擷取substring和substr
定義測試使用的字串 var text hello world 字串hello world字元對應下標he llow orld 0123 4567 8910字串擷取 substring start,end 擷取範圍 start,end text.substring 6 11 world substr ...
字串擷取函式
英文及數字擷取函式 substr 函式返回字串的一部分,但要分割的文字如果包括中文字元往往會遇到問題。substr string,start,length 例子 rest substr abcdef 1 returns bcdef 從位置為1的字元向後擷取到字串尾 rest substr hello...