1. 程式人生 > >JS字符串處理方法

JS字符串處理方法

全局 一個數 ring 數組 處理 大小寫轉換 而不是 case value

1.字符方法
charAt()和charCodeAt();這兩個方法都接收一個參數
例:
<script>
var stringValue = "hello world";
stringValue.charAt(1);//"e"=>以單字符字符串的形式返回給定位置的字符
stringValue.charCodeAt(1);//"101"=>以單字符字符串的形式返回給定位置的字符的編碼

//此外:stringValue[index]方法也返回特定位置的單個字符
//例:
stringValue.stringValue[1];//"e"=>返回特定位置的單個字符
</script>

2.字符串的截取方法 slice(),substring(),substr()的區別

<script>
var stringValue = "hello world";
alert(stringValue.slice(3));//"lo world"=>從第三個字符開始截取至最後
alert(stringValue.substring(3));//"lo world"=>從第三個字符開始截取至最後
alert(stringValue.substr(3));//"lo world"=>從第三個字符開始截取至最後
alert(stringValue.slice(3,7));//"lo w"=>從第三個字符開始到第七個字符之間的字符
alert(stringValue.substring(3,7));//"lo w"=>從第三個字符開始到第七個字符之間的字符

alert(stringValue.substr(3,7));//"lo worl"
=>從第三個字符開始向後截取七個字符

//這三個方法對於參數為負數時的處理
alert(stringValue.slice(-3));//"rld"=>相當於(8);會將負值與字符串的長度相加
alert(stringValue.substring(-3));//"hello world"=>相當於(0);會將所有負值參數轉化為0
alert(stringValue.substr(-3));//"rld"=>相當於(8);會將第一個參數轉化為負值與字符串的長度相加,第二個參數轉化為0
alert(stringValue.slice(3,-4));//"lo w"=>相當於(3,7);會將負值與字符串的長度相加
alert(stringValue.substring(3,-4));//"hel"=>相當於(3,0)再自動轉化為(0,3);而該方法會自動將較小的數字作為起始位置;會將所有負值參數轉化為0
alert(stringValue.substr(3,-4));//""=>相當於(3,0)即從第三個字符開始向後截取0;從會將第一個參數轉化為負值與字符串的長度相加,第二個參數轉化為0
</script>

3.字符串位置方法:indexOf()與lastIndexOf();
var stringValue = "hello world";

stringValue.indexOf("o");//4=>從字符串的開頭向後搜索子字符串的位置
stringValue.lastIndexOf("o");//7=>從字符串的末尾向前搜索子字符串的位置
加上可選的第二個參數
stringValue.indexOf("o",6);//7=>從字符串的第六個字符向後搜索子字符串的位置
stringValue.lastIndexOf("o",6);//4=>從字符串的第六個字符向前搜索子字符串的位置
4. trim()方法
這個方法會創建一個字符串的副本,刪除字符串中的所有前置和後綴空格,中間的空格不刪除
例:
var stringValue = "   hello world    ";
var trimStringValue = stringValue.trim();// "hello world"

5. 字符串大小寫轉換方法
var stringValue = "hello world";
stringValue.toLowerCase();//"hello world"=>全部轉化為小寫
stringValue.toLocalLowerCase();//"hello world"=>全部轉化為小寫(針對特定地區的實現,在一些小語種下可能會與toLowerCase()有區別)
stringValue.toUpperCase();//"HELLO WORLD"=>全部轉化為大寫
stringValue.toLocalUpperCase();//"HELLO WORLD"=>全部轉化為大寫(針對特定地區的實現,在一些小語種下可能會與toUpperCase()有區別)

6. 字符串的模式匹配方法
1)match();
例:
var text = "cat, bat, sat, fat";
var pattern = /.at/ ;

var matches = text.match(pattern);//返回的是一個數組;

2)search();
例:
var text = "cat, bat, sat, fat";
var pattern = /.at/ ;

var pos= text.search(pattern);//1=>返回的是符合規則的字符串第一次出現的位置;

3)replace();

var text = "cat, bat, sat, fat";
var result = text.replace("at","one");// "cone, bat, sat, fat" 只能替換第一個匹配的字符串,而不是所有的;
var result2 = text.replace(\at\g,"one");//"cone, boneone, sone, fone"加入了正則表達式中的全局(g)標識則會替換所有的

4)split();
可以基於指定的分割符將字符串轉化為數組,分隔符可以是字符串,也可以是RegExp對象,也可以指定第二個參數來控制數組的長度
例:
var colorText = "red,blue,yellow,green";
var color1 = colorText.split(",");//["red","blue","yellow","green"];
var color2 = colorText.split(",",2);//["red","blue"];


7.localCompare()方法
比較兩個字符串
1)如果字符串在字母表中排在參數字符串之前則返回一個負數(大多數情況下返回-1);
2)如果字符串與參數字符串相等則返回0;
3)如果字符串在字母表中排在參數字符串之後則返回一個正數(大多數情況下返回1);
例:
var stringValue = "yellow";
stringValue.localCompare("brik");//1
stringValue.localCompare("yellow");//0
stringValue.localCompare("zoo");//-1
8.formCharCode()方法
接收一或多個字符編碼,然後將它們轉換為一個字符串,本質是與前面的charCodeAt()執行的是相反的操作
alert(String.formCharCode(104,101,108,108,111));//"hello"

9.HTML方法
專門用於簡化常見HTML格式化任務的方法,但是盡量不用
例:
var String = "String"
String.anchor(name);//<a name="name">String</a>
String.bold();//<b>String</b>



 
 
 
 


 
 








JS字符串處理方法