功能说明:该方法可以编译指定的正则表达式,编译之后的正则表达式执行速度将会提高,如果正则表达式多次被调用,那么调用compile方法可以有效的提高代码的执行速度,如果该正则表达式只能被使用一次,则不会有明显的效果。
基本语法:objReg.compile(pattern[,flag])
objReg必选项,RegExp对象变量的名称
pattern 必选项 正则表达式
flag 可选项 匹配选项
复制代码 代码如下:
<html>
<script language="javascript" type="text/javascript">
//要匹配的字符串
var objStr="我的手机号13522222222,他的手机号码13233333333她的手机号码13988888888";
//设置正则表达式匹配以13开头的11为手机号码,全局匹配(这里是匹配移动手机号)
var reg=new RegExp("13[4-9](//d){8}","g");
//提示用户发现移动号码,然后打印出结果
document.write("发现移动手机号码");
//调用函数打印匹配的结果
findPhoneNumbers(objStr.match(reg));
//重新编译正则表达式
reg.compile("13[0-3](//d){8}","g");
document.write("发现联通手机号码");
findPhoneNumbers(objStr.match(reg));
//定义输出返回结果函数
function findPhoneNumbers(arr){
//使用循环输出数据
for(var i=0;i<arr.length;i++){
document.write("<li>"+arr[i]+"<br>");
}
}
</script>
</html>
使用compile方法还可以对指定的正则表达式进行修改并且重新编译,提高了正则表达式的适应性!
基本语法:objReg.compile(pattern[,flag])
objReg必选项,RegExp对象变量的名称
pattern 必选项 正则表达式
flag 可选项 匹配选项
复制代码 代码如下:
<html>
<script language="javascript" type="text/javascript">
//要匹配的字符串
var objStr="我的手机号13522222222,他的手机号码13233333333她的手机号码13988888888";
//设置正则表达式匹配以13开头的11为手机号码,全局匹配(这里是匹配移动手机号)
var reg=new RegExp("13[4-9](//d){8}","g");
//提示用户发现移动号码,然后打印出结果
document.write("发现移动手机号码");
//调用函数打印匹配的结果
findPhoneNumbers(objStr.match(reg));
//重新编译正则表达式
reg.compile("13[0-3](//d){8}","g");
document.write("发现联通手机号码");
findPhoneNumbers(objStr.match(reg));
//定义输出返回结果函数
function findPhoneNumbers(arr){
//使用循环输出数据
for(var i=0;i<arr.length;i++){
document.write("<li>"+arr[i]+"<br>");
}
}
</script>
</html>
使用compile方法还可以对指定的正则表达式进行修改并且重新编译,提高了正则表达式的适应性!
标签:
RegExp,compile
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
桃源资源网 Design By www.nqtax.com
暂无“js正则表达式之RegExp对象之compile方法 编译正则表达式”评论...
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。