JavaScript中的正则表达式

正则表达式(也译作“规则表达式”)可理解为规则、模式,是一种强大的字符串匹配工具。

JS中的正则表达式有两种写法:

  • JS风格(构造函数方式):
               包含在一对斜杠之间的字符,在结束斜杠后,是用于修饰检索模式的可选参数,它们是:

           i:忽略大小写;

          g:全局匹配;

          m:多行匹配。

var reg =/abc/  
var reg2=/abc/ig  

  • perl风格(字面量方式)
var reg = new RegExp("abc");  
var reg = new RegExp("abc","ig"); 


可用于正则表达式的方法

Regular expressions are used with the RegExp methods test and exec and with the String methods matchreplacesearch, and split



下面通过实例进行说明:

RegExp提供的方法

    1. test()方法:如果被查找的字符串包含正则表达式中表示的模式,返回true,否则返回false。
<script type="text/javascript">  
    var str = "time to study";  
    var regex = /tud/;  
    if (regex.test(str)) {  
        alert("found!");  
    } else {  
        alert("no match!");  
    }  
</script>  
    2. exec()方法:如果匹配失败,返回null,否则返回包含和正则表达式匹配的字符串的数组

如果执行exec方法的正则表达式没有分组(没有括号括起来的内容),那么如果有匹配,他将返回一个只有一个元素的数组,这个数组唯一的元素就是该正则表达式匹配的第一个串;如果没有匹配则返回null。

exec如果找到了匹配,而且包含分组的话,返回的数组将包含多个元素,第一个元素是找到的匹配,之后的元素依次为该匹配中的第一、第二...个分组。分组在下面介绍。


String提供的方法

match返回表达式中的子串或者null
replace(regex,replacement)用replacement替换regex
search(regex)返回字符串中regex的开始位置
split(regex)从字符串中以给定的表达式分割出子字符串数组

match
<script type="text/javascript">  
     var matchArray = new Array();  
     var str = "I love the small of clover";  
     var regex = /love/g;  
     matchArray =  str.match(regex);  
     document.write("found: " + matchArray.length);         
 </script> 
输出:
found: 2

search
     <script type="text/javascript">
         var str = "I love the small of clover";
         var regex = /love/;
         var index = str.search(regex);
         document.write("found at pos: " + index);       
     </script>
输出:
found at pos: 2

replace
<script type="text/javascript">  
    var str = "abc;abcc;abccc";  
    var regex = /;/;  
    var splitArr = new Array();  
    splitArr =  str.split(regex);  
    for (var i=0; i<splitArr.length; i++) {  
        document.write(splitArr[i]+"<br/>");  
    }  
 </script> 
输出:
abc
abcc
abccc

split
<script type="text/javascript">  
    var str="111,222,333";  
    var arr=str.split(",");           
    for (var i in arr)  
        document.write(arr[i] + "<br/>");  
</script>  
输出:
111
222
333


元字符

元字符(Meta-Characters)是正则表达式中具有特殊意义的专用字符,用来规定其前导字符(即位于元字符前面的字符)在目标对象中的出现模式。
正则表达式里有很多元字符,常用元字符如下表所 示。

其中,“+”元字符规定其前导字符必须在目标对象中连续出现一次或多次“*”元字符规定其前导字符必须在目标对象中出现零次或连续多次,而“?”元字符规定其前导对象必须在目标对象中连续出现零次或一次

.查找单个字符,除了换行和行结束符
\w查找单词字符
\W查找非单词字符
\d查找数字
\D查找非数字字符
\s查找空白字符
\S查找非空白字符
\0查找null字符
\n查找换行符
\f查找换页符
\r查找回车符
\t查找制表符
\v查找垂直制表符
\xxx查找以八进制数 xxx 规定的字符
\xdd查找以十六进制数 dd 规定的字符
\uxxxx查找以十六进制数 xxxx 规定的 Unicode 字符

方括号

匹配一个范围内的字符。
[a-z][0-9]匹配括号中的字符集中的任意字符
[^a-z][0-9]匹配不在括号中的字符集中的任意字符

锚元字符

如果要从行,字,字符串开始或者结束处匹配,需要用锚元字符。
^      从行首或者字符串开始处匹配
$     从行尾或者字符串末尾处匹配
\b    匹配字符边界
\B    匹配非字符边界






  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
校园失物招领系统管理系统按照操作主体分为管理员和用户。管理员的功能包括字典管理、论坛管理、公告信息管理、失物招领管理、失物认领管理、寻物启示管理、寻物认领管理、用户管理、管理员管理。用户的功能等。该系统采用了Mysql数据库,Java语言,Spring Boot框架等技术进行编程实现。 校园失物招领系统管理系统可以提高校园失物招领系统信息管理问题的解决效率,优化校园失物招领系统信息处理流程,保证校园失物招领系统信息数据的安全,它是一个非常可靠,非常安全的应用程序。 ,管理员权限操作的功能包括管理公告,管理校园失物招领系统信息,包括失物招领管理,培训管理,寻物启事管理,薪资管理等,可以管理公告。 失物招领管理界面,管理员在失物招领管理界面可以对界面显示,可以对失物招领信息的失物招领状态进行查看,可以添加新的失物招领信息等。寻物启事管理界面,管理员在寻物启事管理界面查看寻物启事种类信息,寻物启事描述信息,新增寻物启事信息等。公告管理界面,管理员在公告管理界面新增公告,可以删除公告。公告类型管理界面,管理员在公告类型管理界面查看公告的工作状态,可以对公告的数据进行导出,可以添加新公告的信息,可以编辑公告信息,删除公告信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值