这是学习 js 正则表达式的第三课,学习之前最好温固一下之前的课程:
正则表达式预算符也有优先级,正则表达式从左到右进行计算,并遵循优先级顺序,这与算术表达式非常类似。
相同优先级的从左到右进行运算,不同优先级的运算先高后低。下表从最高到最低说明了各种正则表达式运算符的优先级顺序:
运算符 | 描述 |
---|---|
\ | 转义符 |
(), (:), (=), [] | 圆括号和方括号 |
*, +, , {n}, {n,}, {n,m} | 限定符 |
^, $, \任何元字符、任何字符 | 定位点和序列(即:位置和顺序) |
| | "或"操作 字符具有高于替换运算符的优先级,使得"m|food"匹配"m"或"food"。若要匹配"mood"或"food",请使用括号创建子表达式,从而产生"(m|f)ood"。 |
使用实例:
1、javascript 使用 RegExp()函数
在 JavaScript 1.2 中带有一个功能强大的RegExp()对象,可以用来进行正则表达式的匹配操作。其中的test()方法可以检验目标对象中是否包含匹配模式,并相应的返回 true 或 false。我们可以使用 JavaScript 编写以下脚本,验证用户输入的邮件地址的有效性。
<html> <head> <script language="javascript1.2"> function verifyAddress(obj) { var email = obj.email.value; var pattern = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+/; flag = pattern.test(email); if (flag) { alert("Your email address is correct ! "); return true; } else { alert("Please try again ! "); return false; } } </script> </head> <body> <form onSubmit="return verifyAddress(this);"> <input name="email" type="text"> <input type="submit"> </form> </body> </html>
2、PHP 使用 ereg()函数
PHP 中可以使用 ereg()函数进行模式匹配操作。ereg()函数的使用格式如下:
ereg(pattern, string)
其中,pattern 代表正则表达式的模式,而 string 则是执行查找替换操作的目标对象。同样是验证邮件地址,使用 PHP 编写的程序代码如下:
<?php if (ereg("^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+",$email)){ echo "Your email address is correct!"; }else{ echo "Please try again!"; } >
定义正则表达式
定义正则表达式有两种形式,一种是普通方式,一种是构造函数方式。
(1)普通方式:var reg=/表达式/附加参数
表达式:一个字符串,代表了某种规则,其中可以使用某些特殊字符,来代表特殊的规则,后面会详细说明。
附加参数:用来扩展表达式的含义,目前主要有三个参数:
- g:代表可以进行全局匹配。
- i:代表不区分大小写匹配。
- m:代表可以进行多行匹配。
上面三个参数,可以任意组合,代表复合含义,当然也可以不加参数。
例子:
var reg=/a*b/;
var reg=/abc+f/g;
(2)构造函数方式:var reg=new RegExp(“表达式”,”附加参数”);
其中“表达式”与“附加参数”的含义与上面那种定义方式中的含义相同。
例子:
var reg=new RegExp(“a*b”);
var reg=new RegExp(“abc+f”,”g”);
(3)普通方式与构造函数方式的区别
普通方式中的表达式必须是一个常量字符串,而构造函数中的表达式可以是常量字符串,也可以是一个 js 变量,例如根据用户的输入来作为表达式参数等等:
var reg=new RegExp(document.forms[0].exprfiled.value,”g”);
你可能对这些文章感兴趣:
- 教你看懂js文件中的正则表达式(二)
- WordPress快速建站第四讲:建站中空间购买解析绑定
- PHP实用功能分享
- 216讲DIV+CSS入门视频教程免费送
- WordPress插件推荐:PDFjs Viewer
- xiu主题添加vip等级评论样式
- 给WordPress友情链接添加图标,并在新窗口打开友情链接
- WordPress插入优酷视频自动播放的办法(适用所有网站)
- WordPress后台登陆提示错误:Cookies因预料之外的输出被阻止的解决办法
- Xampp2016打开提示缺少运行库的解决方法(亲测可行)
- 两个人之间最好的感觉就是,表面相互嫌弃,心中不离不弃。
- 如何为WordPress添加个性化角色
- WordPress4.8来了,新功能很不错哦
- 这也是一篇测试文章