溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

JS PHP字符串截取函數(shù)實(shí)現(xiàn)原理是什么

發(fā)布時(shí)間:2020-09-24 09:17:04 來(lái)源:億速云 閱讀:146 作者:Leah 欄目:開(kāi)發(fā)技術(shù)

今天就跟大家聊聊有關(guān)JS PHP字符串截取函數(shù)實(shí)現(xiàn)原理是什么,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

js有三個(gè):slice() substring() substr()

一般都用substr(start,length),第一個(gè)參數(shù)是開(kāi)始位置的下標(biāo) 必須,可以為負(fù)數(shù),下標(biāo)-1 是指字符串中最后一個(gè)字符,下標(biāo)-2 是指倒數(shù)第二個(gè)字符,以此類推;第二個(gè)參數(shù)是要截取子串的長(zhǎng)度 可選,截取的方向都是從左往右,不會(huì)改變。

截取出來(lái)的子串包含起始位置自己

PS:字符串的索引都從0開(kāi)始計(jì)起

. 空格都是字符

substring(from,until) slice(from,until)都是從一個(gè)索引截取到另一個(gè)索引,只有當(dāng)參數(shù)為負(fù)數(shù)時(shí),他們不一樣,需要強(qiáng)調(diào)的一點(diǎn):子串不包括“until”索引值的元素

substring(0) slice(0) slice()都是截取整個(gè)字符串,無(wú)意義

substring的from必寫(xiě)

php:

1.substr(源字符串,起始位置,[長(zhǎng)度])-截取字符串返回部分字符串

<&#63;php
$str ="phpddt.com";
echo substr($str,2);//pddt.com
echo substr($str,2,3);//pdd
echo substr($str,-2);//om 負(fù)數(shù)從結(jié)尾開(kāi)始取
&#63;>

但是當(dāng)你截取中文字符串的時(shí)候很容易出現(xiàn)亂碼,因?yàn)橐粋€(gè)漢字是兩個(gè)字節(jié),而一個(gè)英文字母是一個(gè)字節(jié)。解決辦法如下:

2.mb_substr(),使用方法和substr相同

不過(guò)要開(kāi)啟php.ini里面extension=php_mbstring.dll擴(kuò)展,不用擔(dān)心,一般的空間商都會(huì)開(kāi)啟這個(gè)擴(kuò)展的。

<&#63;php
echo mb_substr("php點(diǎn)點(diǎn)通",1,3,"UTF-8");//hp點(diǎn)
&#63;>

代碼如下:

substr(string,start,length)

  • 其中start的參數(shù)
  • 正數(shù) - 在字符串的指定位置開(kāi)始
  • 負(fù)數(shù) - 在從字符串結(jié)尾的指定位置開(kāi)始
  • 0 - 在字符串中的第一個(gè)字符處開(kāi)始

看完上述內(nèi)容,你們對(duì)JS PHP字符串截取函數(shù)實(shí)現(xiàn)原理是什么有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI