1215

来源:互联网 发布:超星雕刻机怎么编程 编辑:程序博客网 时间:2024/06/05 14:53
\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;
}
0 0
原创粉丝点击