1.repeat方法:將一個字符串重復自身n次。比如:repeat("chaojidan",2) -> chaojidanchaojidan
方法1:
方法2:
2.取字符串所有字節的長度:str.charCodeAt(i) >255 就把str的長度加一次就OK了.
3.轉換駝峰風格:str.replace(/[-_][^-_]/g,function(match){return match.charAt(1).toUpperCase();})
//-_在[]中,不需要使用/,并且^在[]中是代表反的意思,就是遇到-a或_a,就被替換成A(match就是正則匹配的字符串_a,然后取a,并且大寫)
4.轉換為下劃線風格:str.replace(/([a-z/d])([A-Z])/g,'$1_$2').replace(//-/g,'_').toLowerCase();
//第一個replace,匹配cA,或者4A的字符串,然后用c_A或4_A替換。$1代表第一個子表達式。第二個replace就是使用_替換-。由于-不在[]中,所以需要加/。
5.去掉字符串中的html標簽:str.replace(/<[^>]+>/g,''),這里面會把script標簽去掉,但是不會去掉script中的js腳本
6.去掉script標簽,并且移除里面的js腳本:str.replace(/<script[^>]*>(/S/s)*?)<//script>/img,'')
/需要用/,防止轉義。
//(/S/s)*?)盡可能少的匹配,非貪婪匹配。舉個例子:<script>aaa</script>dddd<script>bbbb</script>,會先匹配<script>aaa</script>,再匹配<script>bbbb</script>,如果沒加?,將是貪婪匹配,將會把<script>aaa</script>dddd<script>bbbb</script>全部匹配掉,連字符串dddd都去掉了。
7.將字符串經過html轉義,得到適合在頁面中顯示的內容.
str.replace(/&/g,'&').replace(/</g,'<').replace(/>/g,'>').replace(/"/g,'"').replace(/'/g,''');
8.將字符串的html實體字符換成對應字符:
跟7相反,只是多了一個replace(/([/d]+);/g,function($0,$1){ return String.fromCharCode(parseInt($1,10)) }) //$1就是第一個子表達式匹配項。
9.trim:str.replace(/^/s+ | /s+$/g,'') ,IE或早期的標準瀏覽器,把許多本屬于空白的字符沒有列為/s中,因此會有bug。不過,又何必執著兼容淘汰的瀏覽器呢。
新聞熱點
疑難解答