Home >Web Front-end >JS Tutorial >How to apply js regular expressions

How to apply js regular expressions

小云云
小云云Original
2018-03-06 16:06:171373browse

本文主要和大家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中正则表达式是怎么使用的?

The above is the detailed content of How to apply js regular expressions. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn