js的正则

一、正则的创建

        //1、字面量创建,一定要加//,不需要加引号
        var regexp=/hello/i;
        //2、直接实例化,以对象的方式创建:需要加单双引号,但是不要加//
        var reg=new RegExp("hello","gi");

二、修饰符说明

  • i:忽略大小写
  • g:全局匹配
  • gi:全局匹配+忽略大小写 

三、RegExp对象方法

  • 正则对象.test(字符串)  匹配成功返回true,失败返回false
// 下述古诗中是否含有“乘风破浪”?---“乘风破浪会有时 直挂云帆济沧海 。”
        var str="乘风破浪会有时 直挂云帆济沧海 。";
        var reg=/乘风破浪/;
        console.log(reg.test(str));
        //true
  • exec()  成功返回数组,失败返回null

四、正则的字符串调用函数

在 JavaScript 中,正则表达式通常用于两个字符串方法 : search() 和 replace()。

search():字符串对象.search(待查找的字符串|正则),搜索字符串中指定的元素,返回符合条件的第一个元素下标,没找到返回-1。

//使用正则搜索字符串中dream
var str2='I have a  dream!';
var reg=/dream/;
var n=str2.search(reg);//n=str2.search(/dream/)
console.log(n);//10

match():字符串对象.match(待匹配的字符串|正则表达式),匹配目标字符串,成功返回数组,失败返回null。

replace():字符串对象.replace(待匹配的字符串|正则表达式,替换的内容),返回新的字符串。

五、正则字符类 

[a-z]              | 匹配a-z任意一个字符                  

[A-Z]             | 匹配A-Z任意一个字符                  

[a-zA-Z]        | 匹配26个英文字母(大小写)           

[0-9]              | 匹配一个数字                         

[0-9a-zA-Z_] | 匹配一个字符可以是数字、字母和下划线 

[^0-9]            | 匹配非数字                           

[^a-zA-Z]      | 匹配非字母                           

 常用字符类

\d      | 匹配数字相当于 [0-9]                         

\D     | 匹配任意非数字的字符  [^0-9]                  

\w     | 匹配字母或数字或下划线   [0-9a-zA-Z_]         

\W    | 匹配任意不是字母,数字,下划线  [^0-9a-zA-Z_] 

\s      | 匹配任意的空白符                              

\S     | 匹配任意不是空白符的字符                      

.       | 匹配除换行符以外的任意单个字符                

^      | 表示匹配行首的文本(以谁开始)                  

$      | 表示匹配行尾的文本(以谁结束)         

\       |转意        

重复字符

*                   | 重复零次或更多次           
+                  | 重复一次或更多次           
?                  | 重复零次或一次             
{n}                | 重复n次                    
{n,}               | 重复n次或更多次
{n,m}            | 重复n到m次                 
[]                  | 匹配字符组内的字符 [abc]   
( str1 | str2 ) | 匹配字符串str1或者str2      

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值