天天看點

JS截取與分割字元串常用技巧總結

JS截取字元串可使用 substring()或者slice()

函數:substring()

定義:substring(start,end)表示從start到end之間的字元串,包括start位置的字元但是不包括end位置的字元。

功能:字元串截取,比如想從"MinidxSearchEngine"中得到"Minidx"就要用到substring(0,6)

<code>var</code> <code>src=</code><code>"images/off_1.png"</code><code>;</code>

<code>alert(src.substring(7,10));</code>

<code>//彈出值為:off</code>

函數:substr()

定義:substr(start,length)表示從start位置開始,截取length長度的字元串。

功能:字元串截取

<code>alert(src.substr(7,3));</code>

函數:split()

功能:使用一個指定的分隔符把一個字元串分割存儲到數組

<code>str=</code><code>"jpg|bmp|gif|ico|png"</code><code>;</code>

<code>arr=theString.split(</code><code>"|"</code><code>);</code>

<code>//arr是一個包含字元值"jpg"、"bmp"、"gif"、"ico"和"png"的數組</code>

函數:indexOf()

<code>var</code> <code>myString=</code><code>"JavaScript"</code><code>;</code>

<code>var</code> <code>w=myString.indexOf(</code><code>"v"</code><code>);w will be 2</code>

<code>var</code> <code>x=myString.indexOf(</code><code>"S"</code><code>);x will be 4</code>

<code>var</code> <code>y=myString.indexOf(</code><code>"Script"</code><code>);y will also be 4</code>

<code>var</code> <code>z=myString.indexOf(</code><code>"key"</code><code>);z will be -1</code>

函數:lastIndexOf()

定義:lastIndexOf()方法傳回從右向左出現某個字元或字元串的首個字元索引值(與indexOf相反)

功能:傳回字元串索引值

<code>alert(src.lastIndexOf(</code><code>'/'</code><code>));</code>

<code>alert(src.lastIndexOf(</code><code>'g'</code><code>));</code>

<code>//彈出值依次為:6,15</code>

補充:substr 和 substring方法的差別

substr 方法

傳回一個從指定位置開始的指定長度的子字元串。

stringvar.substr(start [, length ])

參數

stringvar

必選項。要提取子字元串的字元串文字或 String 對象。

start

必選項。所需的子字元串的起始位置。字元串中的第一個字元的索引為 0。

length

可選項。在傳回的子字元串中應包括的字元個數。

說明

如果 length 為 0 或負數,将傳回一個空字元串。如果沒有指定該參數,則子字元串将延續到 stringvar 的最後。

示例

<code>function</code> <code>SubstrDemo(){</code>

<code>  </code><code>var</code> <code>s, ss;       </code><code>// 聲明變量。</code>

<code>  </code><code>var</code> <code>s =</code><code>"The rain in Spain falls mainly in the plain."</code><code>;</code>

<code>  </code><code>ss = s.substr(12, 5);</code><code>// 擷取子字元串。</code>

<code>  </code><code>return</code><code>(ss);       </code><code>// 傳回 "Spain"。</code>

<code>}</code>

substring 方法

傳回位于 String 對象中指定位置的子字元串。

strVariable.substring(start, end)

"String Literal".substring(start, end)

指明子字元串的起始位置,該索引從 0 開始起算。

end

指明子字元串的結束位置,該索引從 0 開始起算。

substring 方法将傳回一個包含從 start 到最後(不包含 end )的子字元串的字元串。

substring 方法使用 start 和 end 兩者中的較小值作為子字元串的起始點。例如, strvar.substring(0, 3) 和 strvar.substring(3, 0) 将傳回相同的子字元串。

如果 start 或 end 為 NaN 或者負數,那麼将其替換為0。

子字元串的長度等于 start 和 end 之差的絕對值。例如,在 strvar.substring(0, 3) 和 strvar.substring(3, 0) 傳回的子字元串的的長度是 3。

<code>function</code> <code>SubstringDemo(){</code>

<code>  </code><code>var</code> <code>ss;</code><code>// 聲明變量。</code>

<code>  </code><code>var</code> <code>s =</code><code>"The rain in Spain falls mainly in the plain.."</code><code>;</code>

<code>  </code><code>ss = s.substring(12, 17);</code><code>// 取子字元串。</code>

<code>  </code><code>return</code><code>(ss);</code><code>// 傳回子字元串。</code>

本文轉自12691034部落格51CTO部落格,原文連結http://blog.51cto.com/12701034/1929265如需轉載請自行聯系原作者

笑容掩飾愛

繼續閱讀