Heim  >  Artikel  >  Web-Frontend  >  So wenden Sie reguläre js-Ausdrücke an

So wenden Sie reguläre js-Ausdrücke an

小云云
小云云Original
2018-03-06 16:06:171357Durchsuche

本文主要和大家js中正则表达式的应用实例(包括面试题),希望能帮助到大家,能让大家正确使用js正则表达式。

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

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

2、去掉空格

<span style="font-size: 14px;"><script><br/>    var str = &#39; hel  lo &#39;<br/>    function trim(){<br/>        var re = /^\s+|\s+|\s+$/g;<br/>        return str.replace(re,&#39;&#39;);<br/>    }<br/>    alert(&#39;(&#39;+trim(str)+&#39;)&#39;);//(hello)<br/></script><br/></span>

3、判断是否为邮箱email

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

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

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

<span style="font-size: 14px;"> function isEmail(str){<br/>        var reg =/^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((\.[a-zA-Z0-9_-]{2,3}){1,2})$/;<br/>        return reg.test(str);<br/>    }<br/></span>

4、验证手机号码

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

<span style="font-size: 14px;"> function isEmail(str){<br/>        var reg =/^1([0-9]){10}$/; //也可以为 var reg= /^1\d{10}$/;<br/>        return reg.test(str);<br/>    }<br/></span>

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

<span style="font-size: 14px;"> function isEmail(str){<br/>        var reg =/^([0-9a-zA-Z])+$/;<br/>        return reg.test(str);<br/>    }<br/></span>

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

例如:一串字符串:ddjsd234sdjs45sdda83ndas333sa9382ssd2

<span style="font-size: 14px;">var str =&#39;dgfhfgh254bhku289fgdhdy67&#39;;<br/>    var arr = [];<br/>    function arrFn(){<br/>        var re = /\d+/g ;<br/>        arr.push(str.match(re));<br/>        return arr;<br/>    }<br/></span>

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

<span style="font-size: 14px;">var re = /([a-zA-Z])\1+/;<br/></span>

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

<span style="font-size: 14px;">var re = /[aeiou]$/i;  //不要忘了添加不区分大小写的字符i<br/></span>

9、判断是否符合USD格式

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

<span style="font-size: 14px;"> var str =&#39;$1,023,032.03&#39;;<br/>      var re = /^\$\d{1,3}((,\d{3}))*(\.\d{2})?$/;  //需要注意的是特殊字符要加转义符号\<br/></span>

10、获取URL参数

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

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

相关推荐:

JS中正则表达式的理解

总结js中正则表达式的创建与使用

js中正则表达式是怎么使用的?

Das obige ist der detaillierte Inhalt vonSo wenden Sie reguläre js-Ausdrücke an. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn