1215

\b 代表着單詞的開頭或結尾,也就是單詞的分界處 \b匹配這樣的位置:它的前一個字符和後一個字符不全是(一個是,一個不是或不存在)\w
. 除了換行符以外的任意字符 換行符就是'\n',ASCII編碼爲10(十六進制0x0A)的字符


\w 匹配字母或數字或下劃線或漢字
\s 匹配任意的空白符
\d 匹配數字
\b 匹配單詞的開始或結束
^ 匹配字符串的開始
$ 匹配字符串的結束
* 重複零次或更多次
+ 重複一次或更多次
? 重複零次或一次
{n} 重複n次
{n,} 重複n次或更多次
{n,m} 重複n到m次
常用的反義代碼 (大寫)
\W 匹配任意不是字母,數字,下劃線,漢字的字符
\S 匹配任意不是空白符的字符
\D 匹配任意非數字的字符
\B 匹配不是單詞開頭或結束的位置
[^x] 匹配除了x以外的任意字符
[^aeiou] 匹配除了aeiou這幾個字母以外的任意字符
|
/g 匹配所有(全文有幾個就匹配幾個)
/i 忽略大小寫
/d 數字
/的寫法: /gi 




\S+匹配不包含空白符的字符串。
<a[^>]+>匹配用尖括號括起來的以a開頭的字符串


\b(\w+)\b\s+\1\b可以用來匹配重複的單詞,像go go, 或者kitty kitty。這個表達式首先是一個單詞,也就是單詞開始處和結束處之間的多於一個的字母或數字(\b(\w+)\b),這個單詞會被捕獲到編號爲1的分組中,然後是1個或幾個空白符(\s+),最後是分組1中捕獲的內容(也就是前面匹配的那個單詞)(\1)。


\a 報警字符(打印它的效果是電腦嘀一聲)
\b 通常是單詞分界位置,但如果在字符類裏使用代表退格
\t 製表符,Tab
\r 回車
\v 豎向製表符
\f 換頁符
\n 換行符


零寬斷言 (?=exp) 匹配exp前面的位置
(?<=exp) 匹配exp後面的位置
(?!exp) 匹配後面跟的不是exp的位置
(?<!exp) 匹配前面不是exp的位置
\b\w+(?=ing\b) I'm singing while you're dancing.時,它會匹配sing和danc。  \b\w+(表達式)意思是 以字符串開頭,符合表達式
(?<=\bre)\w+\b reading a book 它匹配ading。
eg:
將數字87463297轉成87,463,297
零寬斷言
 str.replace(/\d{1,3}(?=(\d{3})+$)/g,function(s){
    return s+','
}) 
用字符串reverse()
console.info( str.split("").reverse().join("").replace(/(\d{3})+?/g,function(s){
    return s+",";
}).replace(/,$/,"").split("").reverse().join("") )






ng-standmoney




必須在
客戶附言必須在此區間內:0-9,a-z,A-Z,GB 2312 漢字區。即 GBK/2: B0A1-F7FE.GB 2312 非漢字符號區。即 GBK/1: A1A1-A9FE。


        String regOutRemit = "[a-zA-Z0-9。,?!;:《》()\u4E00-\u9FA5\uF900-\uFA2D]";
    if(!Util.isNullOrEmpty(postScript)){
    for(int i=0;i<postScript.length();i++)
    {
    if(!String.valueOf((postScript.charAt(i))).matches(regOutRemit))
    return false;
    }
    }
    return true;
   
    //阻止事件提交.
    element.bind("keypress", function(e) {
if(e.keyCode){//firefox
if((e.keyCode<48 && e.keyCode !=46) || e.keyCode>57)
e.preventDefault();
}
else{//非firefox
if((e.which<48 && e.keyCode !=46) || e.which>57)
e.preventDefault();
}
});


preventDefault 冒泡自己不提交
stopPropagation 提交不冒泡


數字轉換爲大寫
if(undefined == Num || Num == null || Num == "") {
return "";
}
for(var i=Num.length-1;i>=0;i--) {
Num = Num.replace(",","");//替換tomoney()中的“,”
Num = Num.replace(" ","");//替換tomoney()中的空格
}
//---字符處理完畢,開始轉換,轉換採用前後兩部分分別轉換---//
part = String(Num).split(".");
if(part[0].length > 10){ 
return "over";
}
//去掉金額左側0
var amount = parseInt(part[0]);
part[0] = String(amount);
newchar = ""; 
//小數點前進行轉化
for(i=part[0].length-1;i>=0;i--) {//若數量超過拾億單位,提示
tmpnewchar = "";
perchar = part[0].charAt(i);
switch(perchar){
case "0": tmpnewchar="零" + tmpnewchar ;break;
case "1": tmpnewchar="壹" + tmpnewchar ;break;
case "2": tmpnewchar="貳" + tmpnewchar ;break;
case "3": tmpnewchar="叄" + tmpnewchar ;break;
case "4": tmpnewchar="肆" + tmpnewchar ;break;
case "5": tmpnewchar="伍" + tmpnewchar ;break;
case "6": tmpnewchar="陸" + tmpnewchar ;break;
case "7": tmpnewchar="柒" + tmpnewchar ;break;
case "8": tmpnewchar="捌" + tmpnewchar ;break;
case "9": tmpnewchar="玖" + tmpnewchar ;break;
}
switch(part[0].length-i-1) {
case 0: tmpnewchar = tmpnewchar +"圓" ;break;
case 1: if(perchar!=0)tmpnewchar= tmpnewchar +"拾" ;break;
case 2: if(perchar!=0)tmpnewchar= tmpnewchar +"佰" ;break;
case 3: if(perchar!=0)tmpnewchar= tmpnewchar +"仟" ;break;
case 4: tmpnewchar= tmpnewchar +"萬" ;break;
case 5: if(perchar!=0)tmpnewchar= tmpnewchar +"拾" ;break;
case 6: if(perchar!=0)tmpnewchar= tmpnewchar +"佰" ;break;
case 7: if(perchar!=0)tmpnewchar= tmpnewchar +"仟" ;break;
case 8: tmpnewchar= tmpnewchar +"億" ;break;
case 9: tmpnewchar= tmpnewchar +"拾" ;break;
}
newchar = tmpnewchar + newchar;
}
//小數點之後進行轉化
if (Num.indexOf(".")!=-1) {
if(part[1].length > 2) {
part[1] = part[1].substr(0,2);
}
for(var i=0;i<part[1].length;i++){
tmpnewchar = "";
perchar = part[1].charAt(i);
switch(perchar){
case "0": tmpnewchar="零" + tmpnewchar ;break;
case "1": tmpnewchar="壹" + tmpnewchar ;break;
case "2": tmpnewchar="貳" + tmpnewchar ;break;
case "3": tmpnewchar="叄" + tmpnewchar ;break;
case "4": tmpnewchar="肆" + tmpnewchar ;break;
case "5": tmpnewchar="伍" + tmpnewchar ;break;
case "6": tmpnewchar="陸" + tmpnewchar ;break;
case "7": tmpnewchar="柒" + tmpnewchar ;break;
case "8": tmpnewchar="捌" + tmpnewchar ;break;
case "9": tmpnewchar="玖" + tmpnewchar ;break;
}
if(i==0)tmpnewchar =tmpnewchar + "角";
if(i==1)tmpnewchar = tmpnewchar + "分";
newchar = newchar + tmpnewchar;
}
}


//替換所有無用漢字
while(newchar.search("零零") != -1)
newchar = newchar.replace("零零", "零");

newchar = newchar.replace("零億", "億");
newchar = newchar.replace("零萬", "萬");
newchar = newchar.replace("零圓", "圓");
newchar = newchar.replace("零角", "");
newchar = newchar.replace("零分", "");
newchar = newchar.replace("億萬", "億");


if (newchar.charAt(0) == "圓"){
newchar = newchar.replace("圓", "");
}
if (newchar.charAt(newchar.length-1) == "圓"){
newchar = newchar+"整";
return newchar;
}else{
return newchar;
}
發佈了25 篇原創文章 · 獲贊 0 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章