1-10 正则表表达式-RegExp对象

RegExp对象

RegExp对象: 正则表达式(Regular Expression);
什么是: 在程序中专门保存一条正则表达式,并提供用正则表达式执行验证和查找功能的API的对象;
何时: 只要在程序中保存和使用正则表达式时,都要先创建正则表达式对象;

如何创建
创建正则表达式对象: 2种

  1. 用//直接量方式创建: var reg=/正则/ig。

何时: 如果正则表达式不需要动态生成时。

  1. 用new创建: var reg=new RegExp("正则"[,"ig"])。

何时: 如果正则表达式需要用程序动态生成时。

//数据库: 紫烟  青天  明月
//ajax:[紫烟,青天,明月]
var kwords=["紫烟","青天","明月"];

var msg=prompt("请输入消息内容");
                 //kwords.join("|")
                 //"紫烟|青天|明月"
var reg=new RegExp(kwords.join("|"));
      //new RegExp("紫烟|青天|明月")
      //等效于: /紫烟|青天|明月/
if(reg.test(msg)){//照样可以判断是否包含
  document.write("<h1 style='color:red'>包含敏感词!不允许发送!</h1>");
}else{
  document.write("啊黄说:"+msg);
}

总结:

1、双斜线/ /里只能写正则表达式,不能写js语句。而new RegExp("正则")括号里返回的是字符串,所以js可以写在括号里。
2、今后只要是写死的就用/ /,正则表达式需要用程序动态生成时就用RegExp对象。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第五章******************************************************...
    fastwe阅读 3,961评论 0 0
  • 自从年前得空写了两篇文章之后就开始忙了,这一忙就是2个月😭。当时信誓旦旦说的定期写篇博客的计划也就泡汤了🤣,不过好...
    景科同学阅读 4,855评论 0 9
  • 前言 对于正则,著称火星文字,见名知意主要它晦涩难懂,一直以来,看到它总是怕怕的,在平时,也只是简单的用用,其主要...
    itclanCoder阅读 4,193评论 0 2
  • 正则表达式学习笔记 一篇记录了学习正则表达式的笔记。 1. 转义字符 在 HTMl 中转义字符以 & 符号开头,分...
    heyi_let阅读 3,101评论 0 0
  • 开发准备 1.首先新建项目,然后去官网下载最新的开发包:http://doc.open.alipay.com/do...
    曾迦阅读 12,811评论 35 66