Rumah >hujung hadapan web >tutorial js >js正则表达式的10个应用实例

js正则表达式的10个应用实例

php中世界最好的语言
php中世界最好的语言asal
2018-03-07 17:15:522902semak imbas

js中正则表达式的10个应用实例

1、找重复项最多的字符和个数

[html] view plain copy

<script>  
   var str = &#39;sassdfdfffdasdffffffsdsdddsss&#39;;  
   var arr = str.split(&#39;&#39;);//先把字符串分割为字符串数组  
   str = arr.sort().join(&#39;&#39;);对数组进行排序后再将数组转化为字符串  
    var value = &#39;&#39;;  
    var index = 0;  
    var re = /(\w)\1+/g;  
    str.replace(re,function($0,$1){  
       if(index<$0.length){  
          index = $0.length;  
          value = $1;  
       }  
    });  
    alert(&#39;最多的字符:&#39;+ value +&#39; ,重复的次数:&#39;+index);//最多的字符:f ,重复的次数:10  
</script>

2、去掉空格

<script>  
    var str = &#39; hel  lo &#39;  
    function trim(){  
        var re = /^\s+|\s+|\s+$/g;  
        return str.replace(re,&#39;&#39;);  
    }  
    alert(&#39;(&#39;+trim(str)+&#39;)&#39;);//(hello)  
</script>

3、判断是否为邮箱email

验证规则: 电子邮箱的正确写法一般为: 用户名@邮箱网站.com(.cn) 

第一部分:由字母、数字、下划线、短线“-”、点号“.”组成

第二部分:为一个域名,域名由字母、数字、短线“-”、域名后缀组成(域名后缀一般为两位到三位。例如:com cn net现在域名有的也会大于四位)

function isEmail(str){  
       var reg =/^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((\.[a-zA-Z0-9_-]{2,3}){1,2})$/;  
       return reg.test(str);  
   }

4、验证手机号码

验证规则: 11位数字,以1开头

function isEmail(str){  
       var reg =/^1([0-9]){10}$/; //也可以为 <span style="background-color:rgb(255,255,255);">var reg= <span style="color:rgb(0,0,0);font-family:Consolas, &#39;Bitstream Vera Sans Mono&#39;, &#39;Courier New&#39;, Courier, monospace;font-size:14px;text-align:left;white-space:pre;">/^1\d{10}$/;</span></span>  
       return reg.test(str);  
   }

5、验证是否由数字和字母组成

function isEmail(str){  
       var reg =/^([0-9a-zA-Z])+$/;  
       return reg.test(str);  
   }

6、如何获取一个字符串中的数字字符,并按数组形式输出

例如:一串字符串:ddjsd234sdjs45sdda83ndas333sa9382ssd2

var str =&#39;dgfhfgh254bhku289fgdhdy67&#39;;  
    var arr = [];  
    function arrFn(){  
        var re = /\d+/g ;  
        arr.push(str.match(re));  
        return arr;  
    }

7、判断字符串是否存在连续重复的字母

var re = /([a-zA-Z])\1+/;

8、判断是否已元音字母结尾

var re = /[aeiou]$/i;  //不要忘了添加不区分大小写的字符i

9、判断是否符合USD格式

规则:给定字符串 str,检查其是否符合美元书写格式 
1、以 $ 开始 
2、整数部分,从个位起,满 3 个数字用 , 分隔 
3、如果为小数,则小数部分长度为 2 
4、正确的格式如:$1,023,032.03 或者 $2.03,错误的格式如:$3,432,12.12 或者 $34,344.3**

var str =&#39;$1,023,032.03&#39;;  
     var re = /^\$\d{1,3}((,\d{3}))*(\.\d{2})?$/;  //需要注意的是特殊字符要加转义符号\

10、获取URL参数

规则:
1. 指定参数名称,返回该参数的值 或者 空字符串 
2. 不指定参数名称,返回全部的参数对象 或者 {} 
3. 如果存在多个同名参数,则返回数组**

//    获取 url 参数  
    function getUrlParam(sUrl, sKey) {  
        var arr={};  
        sUrl.replace(/\??(\w+)=(\w+)&?/g,function(match,p1,p2){  
            //console.log(match,p1,p2);  
            if(!arr[p1]){  
                arr[p1]=p2;  
            }  
            else {  
                var p=arr[p1];  
                arr[p1]=[].concat(p,p2);  
            }  
  
        })  
        if(!sKey)return arr;  
        else{  
            for(var ele in arr){  
                if(ele==sKey){return arr[ele];}  
            }  
            return "";  
        }  
    }

相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!

相关阅读:

Spring的配置

Spring的MVC配置

Hibernate的映射文件详解

Atas ialah kandungan terperinci js正则表达式的10个应用实例. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:js中的正则表达式大全Artikel seterusnya:js关于BOM操作的知识整理