2012年11月12日 星期一

javascript 字串處理

form http://miisoo.blogspot.tw/2008/01/javascript-string-operations.html
http://ccckmit.wikidot.com/js:string


  • 尋找字串(search)stringObject.search(searchstring)
    stringObject.search(尋找的字串)
    大小寫必須相符

    var str = "test String";
    alert(str.search("Str"));
    alert(str.search("str"));
    輸出結果:5
    輸出結果:-1



  • 傳回字串內相符的字串(match)無相符字串則傳回null,大小寫要相符

    var str = "test String";
    alert(str.match("TEST"));
    alert(str.match("Str"));
    輸出結果:null
    輸出結果:Str

  • 取得字串長度(length)
    var str = "test String";
    alert(str.length);
    輸出結果:11



  • 尋找某字串在字串內的位置(indexOf)stringObject.indexOf(searchvalue,fromindex)
    stringObject.indexOf (尋找的字串,開始尋找的位置)

    var str = "test String";
    alert(str.indexOf("Str"));
    alert(str.indexOf("Str",6));
    輸出結果:5
    輸出結果:-1



  • 從後往前找某字串在字串內的位置(lastIndexOf)stringObject.lastIndexOf(searchvalue,fromindex)
    stringObject.lastIndexOf (尋找的字串,開始尋找的位置)

    var str = "test String";
    alert(str.lastIndexOf("Str"));
    alert(str.lastIndexOf("Str",2));
    alert(str.lastIndexOf("Str",10));
    輸出結果:5
    輸出結果:-1
    輸出結果:5




  • 變更英文字大小寫toUpperCase() 大寫
    toLowerCase() 小寫

    var str = "test String";
    alert(str.toUpperCase());
    alert(str.toLowerCase());
    輸出結果:TEST STRING
    輸出結果:test string




  • 傳回字串內某位置的字元(charAt)
    stringObject.charAt(index)
    位置由0開始

    var str = "test String";
    alert(str.charAt(3));
    alert(str.charAt(7));
    輸出結果:t
    輸出結果:r


  • 傳回參數中以Unicode值所代表的字元組成的字串(fromCharCode)String.fromCharCode(numX,numX,...,numX)
    alert(String.fromCharCode(65,66,67));
    輸出結果:ABC




  • 傳回字串內某位置區間的字串(substring & substr)stringObject.substring(start,stop)
    stringObject.substring(開始位置,結束位置)
    stringObject.substr(start,length)
    stringObject.substr(開始位置,字串長度)
    (開始位置)若為負數則由後往前數,但不適用於IE

    alert("0123456789".substring(4,6))
    alert("0123456789".substr(4,6))
    輸出結果:45
    輸出結果:456789




  • 字串取代(replace)stringObject.replace(findstring,newstring)
    stringObject.replace(要找尋的字串,換成新的字串)
    大小寫必須相符

    var str = "test String";
    alert(str.replace("string", "Text"));
    alert(str.replace("String", "Text"));
    輸出結果:test String
    輸出結果:test Text




  • 組合字串(concat)
    stringObject.concat(stringA,stringB,...,stringX)
    stringObject.concat(字串A,字串B,...,字串X)

    var strA = "test ";
    var strB = "String";
    alert(str1.concat(str2));
    輸出結果:test String




  • 取得切割字串(slice)stringObject.slice(start,end)
    stringObject.slice(開始位置,結束位置)

    var str = "test String";
    alert(str.slice(5));
    alert(str.slice(0,4));
    輸出結果:String
    輸出結果:test



  • 分割字串(split)stringObject.split(separator, howmany)
    stringObject.split(分割字串, 分割後各字串的字元數)

    var str = "test String";
    alert(str.split(""));
    alert(str.split(" ",4));
    輸出結果:t,e,s,t, ,S,t,r,i,n,g
    輸出結果:test,String


屬性說明範例結果
constructor傳回建構函數"Hello".constructorfunction String() { [native code] }
length傳回長度"Hello".lengthfunction String() { [native code] }
prototype傳回原型"Hello".prototypeundefined
函數說明範例結果
charAt()傳回第 i 個字元"Hello".charAt(1)e
charCodeAt()傳回第 i 個字元的 Unicode"Hello".charCodeAt(1)101
concat()連接兩個以上的字串"Hello".concat(" World", " !")Hello World !
fromCharCode()將 Unicode 代碼轉為字元"Hello".fromCharCode(101, 102)ef
indexOf()傳回子字串的位置"Hello".indexOf("el")1
lastIndexOf()傳回子字串的位置 (倒著掃瞄)"Hello".lastIndexof("l")3
match()搜尋正規表達式"Hello".match("[aeiou]")2
replace()取代正規表達式"Hello".replace("l", "L")HeLLo
search()搜尋正規表達式"Hello".search("[aeiou]")e
slice()切出字串"Hello".slice(-3)llo
split()分割字串"Hello".split("e")H,llo
substr()取出 from 開始長度為 len 的子字串"Hello".substr(2,2)ll
substring()取出 from 到 to 之間的子字串"Hello".substring(2,4)llo
toLowerCase()轉為小寫"Hello".toLowerCase()hello
toUpperCase()轉為大寫"Hello".toUpperCase()HELLO
valueOf()傳回原型值"Hello".valueOf()Hello

操作。

0 意見:

張貼留言

 

MangoHost Copyright © 2009 Cookiez is Designed by Ipietoon for Free Blogger Template