php字元位置
A. php 獲取某字元串時,字元最後出現的位置在哪裡
各函數情況如下:
1、strstr(string,string) = strchr(,) //從前面第一次出現某個字元串的地方截取到最後
2、strrchr(string,string) //從某個字元串從最後出現的位置截取到結尾
3、strpos(string,string[,int]) //某個字元串第一次出現的位置
4、strrpos(string,string) //某個字元串最後一次出現的位置
5、substr(string,int[,int]) //從指定位置開始截取字元串,可以指定截取的長度。
6、strlen(string) //獲取字元串的長度
B. php替換怎麼替換指定位置字元
functionreplace($str,$index,$s){
//參數定義:
//$str 原字元串
//$index要替換的位置(第一個"-"前面的位置為0,最後一個"-"後面的位置等於減號數量)
//$s 要替換的內容
$str=rtrim(rtrim($str,'html'),'.');
$arr=explode('-',$str,14); //如果是前面固定13個減號,可以加一個參數14
if($index>=count($arr)){
$arr[count($arr)-1]=$s;
}elseif($index<0){
$arr[0]=$s;
}else{
$arr[$index]=$s;
}
return(implode('-',$arr).'.html');
}
$string='21--------43-----哈啊.html';
$newStr=replace($string,0,'aaa'); //第1個減號前面的位置替換為aaa
echo$newStr.'<br>';
$newStr=replace($newStr,2,'bbb'); //第2個減號後面的位置替換為bbb
echo$newStr.'<br>';
$newStr=replace($newStr,8,'ccc'); //第8個減號後面的位置替換為ccc
echo$newStr;
注意:原字元串結尾部分不能連續兩個"html"或者連續兩個"."連著
如果原字元串在替換的時候不加".html"就沒有這個限制了,就像這樣
functionreplace($str,$index,$s){
//參數定義:
//$str 原字元串
//$index要替換的位置(第一個"-"前面的位置為0,最後一個"-"後面的位置等於減號數量)
//$s 要替換的內容
$arr=explode('-',$str,14); //如果是前面固定13個減號,可以加一個參數14
if($index>=count($arr)){
$arr[count($arr)-1]=$s;
}elseif($index<0){
$arr[0]=$s;
}else{
$arr[$index]=$s;
}
return(implode('-',$arr).'.html');
}
$string='21--------43-----哈啊';
$newStr=replace($string,0,'aaa'); //第1個減號前面的位置替換為aaa
echo$newStr.'.html<br>';
$newStr=replace($newStr,2,'bbb'); //第2個減號後面的位置替換為bbb
echo$newStr.'.html<br>';
$newStr=replace($newStr,8,'ccc'); //第8個減號後面的位置替換為ccc
echo$newStr.'.html';
應該能用吧
C. PHP如何獲取字元串中第一次出現中文字元的位置
$a='abcd12中456文';
//獲取到「中」字的位置
preg_match('/中/',$a,$matches,PREG_OFFSET_CAPTURE);
print_r($matches[0][1]);
echo" ";
//獲取「中456」這幾個字(注意只支持utf8編碼其他編碼請轉utf8再匹配)
preg_match('/[x{4e00}-x{9fa5}]d{3}(?=[x{4e00}-x{9fa5}])/u',$a,$matches);
print_r($matches[0]);
D. php 獲取字元串某字元的位置!
有以下幾種方法:
stripos() 返回字元串在另一字元串中第一次出現的位置(大小寫不敏感)
stristr() 查找字元串在另一字元串中第一次出現的位置(大小寫不敏感)
strpos() 返回字元串在另一字元串中首次出現的位置(對大小寫敏感)
strrchr() 查找字元串在另一個字元串中最後一次出現的位置。
strripos() 查找字元串在另一字元串中最後出現的位置(對大小寫不敏感)
strrpos() 查找字元串在另一字元串中最後出現的位置(對大小寫敏感)
(4)php字元位置擴展閱讀:
PHP常用函數:
strtoupper()函數把字元串轉換為大寫
strtolower()函數把字元串轉換為小寫
strtok()函數把字元串分割為更小的字元串
strstr()函數搜索一個字元串在另一個字元串中的第一次出現
strspn()函數返回在字元串中包含的特定字元的數目
strrpos()函數查找字元串在另一個字元串中最後一次出現的位置
strripos()函數查找字元串在另一個字元串中最後一次出現的位置
E. PHP中找字元串位置
<?php
$str = "我愛我母親,我愛我父親";
$find = "我愛";
$findLen = strlen($find);
$tmp = stripos($str, $find);
echo '第一個"我愛"的位置'.$tmp.'<br />';
$tmp += $findLen;
$i = stripos($str, $find, $tmp);
echo '第二個"我愛"的位置'.$i.'<br />';
?>
運行結果:
第一個"我愛"的位置0
第二個"我愛"的位置12
以為一個中文占兩個字元,所以第二個「我愛」的位置是12.
F. php 如何將一串字元插入到另一串字元串的指定位置
以下是一個參考函數,
參數$str為,原始字元串,例如123456。
參數$i為,要插入的位置。
參數$substr為,要插入的字元串,例如hello。
返回值為最後結果,例如12345hello6
functionstr_insert($str,$i,$substr)
{
for($j=0;$j<$i;$j++){
$startstr.=$str[$j];
}
for($j=$i;$j<strlen($str);$j++){
$laststr.=$str[$j];
}
$str=($startstr.$substr.$laststr);
return$str;
}
G. php如何判斷一個字元在字元串中最後出現的位置
在 php 里,你可以使用 strrpos 來得出指定字元在字元串中最後出現的位置,其函數的詳細說明如下(資料源於php手冊):
strrpos — 計算指定字元串在目標字元串中最後一次出現的位置
說明:
int strrpos ( string $haystack , string $needle [, int $offset = 0 ] )
返回字元串 haystack 中 needle 最後一次出現的數字位置。注意 PHP4 中,needle 只能為單個字元。如果 needle 被指定為一個字元串,那麼將僅使用第一個字元。
補充:如果對字元不區分大小寫,你可以使用 strripos 函數,這個函數 計算指定字元串在目標字元串中最後一次出現的位置(不區分大小寫)。