正则表达式的使用

先说RegExp对象的一个方法

test()

- 使用这个方法可以用来检查一个字符串是否符合正则表达式的规则,如果符合则返回true,否则返回false。

1、用正则表达式来检查一个字符串中是否含有字母a

var reg = new RegExp("a");
var s="abcdef";
console.log(reg.test(s));

创建了一个RegExp对象reg,匹配规则是含有字母a,匹配模式没写,然后创建一个字符串s,reg调用方法test()检查是否符合匹配规则。s字符串中含有字母a,所以返回true。

2、用正则表达式来检查一个字符串中是否含有字母A,大写的A该怎么办呢?匹配模式设置为"i",对大小写不敏感。无论是大小写,含有a就行。

var reg = new RegExp("a","i");
var s="abcdef";
var s1="A2dffdf";
var s2="fgjdhgfd";
console.log(reg.test(s));
console.log(reg.test(s1));
console.log(reg.test(s2));

3、 创建一个正则表达式,检查一个字符串中是否有a或b

var reg = /a|b/; //这里使用直接量方式创建了一个正则表达式 var reg=/正则表达式/匹配模式
var s="abcd";
var s1="acd";
var s2="bcd";
var s3="cdef";
console.log(reg.test(s));
console.log(reg.test(s1));
console.log(reg.test(s2));
console.log(reg.test(s3));

4、 创建一个正则表达式检查一个字符串中是否有字母。26个字母,不可能 a|b|c|d|e.......这样写吧。这里可以使用[],[ab]其实和a|b的意思一样,就是含有a或b之中的一个。所以26个字母就[abcdefghi......],当然不会这么写。答案是[a-z],表示字母a到z。所以有一些结论:

[a-z] 任意小写字母
[A-Z] 任意大写字母
[A-z] 任意字母
[0-9] 任意数字

var reg=/[A-z]/
var s="a12356654";
var s1="4545552";
console.log(reg.test(s));
console.log(reg.test(s1));

5、检查一个字符串中是否含有 abc 或 adc 或 aec。

答案:reg = /a[bde]c/;

6、检查一个字符串是否含有ab字母以外的字符。

var reg=/[^ab]/;
var s="ab";
var s1="123";
var s2="ab123";
console.log(reg.test(s));
console.log(reg.test(s1));
console.log(reg.test(s2));

JavaScript学习系列博客_35_JavaScript 正则表达式的使用的更多相关文章

  1. JavaScript学习系列博客_1_JavaScript简介

    这个系列博客主要用来记录本人学习JavaScript的笔记,从0开始,即使有些知识我也是知道的.但是会经常忘记,干脆就写成博客,没事的时候翻来看一看,留下一点学习的痕迹也好.可能写博客的水平暂时不太好 ...

  2. JavaScript学习系列博客_24_JavaScript 原型对象

    原型(prototype) - 创建一个函数(所有函数)以后,解析器都会默认在函数中添加一个属性prototype prototype属性指向的是一个对象,这个对象我们称为原型对象. 创建一个函数My ...

  3. JavaScript学习系列博客_34_JavaScript RegExp对象

    RegExp 对象 RegExp 对象表示正则表达式,它是对字符串执行模式匹配的强大工具. 创建 RegExp 对象的语法(构造函数方式): pattern:正则表达式,attributes:匹配模式 ...

  4. JavaScript学习系列博客_33_JavaScript String对象

    String对象 在底层,字符串是以数组的形式保存的.比如说一个字符串"String"以["H","t","r",&qu ...

  5. JavaScript学习系列博客_5_JavaScript中的强制类型转换

    -强制类型转换为String 1.方式1 调用被转换数据的toString()方法 number类型值.布尔类型值.都可以调用toString()方法强制转换.但是null值和undefined值不行 ...

  6. JavaScript学习系列博客_4_JavaScript中的数据类型

    JavaScript中有6种数据类型 一.基本数据类型 - String 字符串 JS中的字符串需要使用引号引起来双引号或单引号都行 但是要注意的是某种引号嵌套使用的话,需要加上 \ 转义.比如说我们 ...

  7. JavaScript学习系列博客_2_JavaScript编写位置

    JavaScript代码一般编写在哪里呢? 看到这个问题,第一个反应就是,JavaScript那当然是编写在<Script></Script>这对标签中啊!然而! 1.可以编写 ...

  8. JavaScript学习系列博客_32_JavaScript 包装类

    包装类 - 在JS中为我们提供了三个包装类: String() Boolean() Number() - 通过这三个包装类可以创建基本数据类型的对象 例子: var num = new Number( ...

  9. JavaScript学习系列博客_31_JavaScript Math 工具类

    Math - Math属于一个工具类,它不需要我们创建对象(例如Date日期对象需要通过构造函数创建对象 var 变量=new Date(),Math不需要),它里边封装了属性运算相关的常量和方法 我 ...

随机推荐

  1. python Web项目上线之服务器环境配置

    1.下载安装Xftp 安装成功后,登录服务器用户密码,登录成功后 使用Xftp 将下载好的python解释器linux压缩包放置在服务器根目录下(这里用的是python3.7) 2. 解压压缩包,安装 ...

  2. 修改python默认版本

    查看默认Python版本 python -V 1.安装gcc,用于编译Python源码 yum install gcc 2.下载源码包,https://www.python.org/ftp/pytho ...

  3. .Net微服务实战之CI/CD

    系列文章 .Net微服务实战之技术选型篇 .Net微服务实战之技术架构分层篇 .Net微服务实战之DevOps篇 .Net微服务实战之负载均衡(上) 相关源码:https://github.com/S ...

  4. 浅谈NTLM Hash

    认识Windows Hash 早期SMB协议在网络上传输明文口令.后来出现LAN Manager 挑战/响应验证机制(LM),其很容易破解,因此微软提出了WindowsNT挑战/响应验证机制(NTLM ...

  5. 真香!Linux 原来是这么管理内存的

    Linux 内存管理模型非常直接明了,因为 Linux 的这种机制使其具有可移植性并且能够在内存管理单元相差不大的机器下实现 Linux,下面我们就来认识一下 Linux 内存管理是如何实现的. 基本 ...

  6. 第三章 Java面向对象(上)

    3.1.概述 概述:面向对象是相对面向过程而言,面向对象和面向过程都是一种思想,面向过程强调的是功能行为,面向对象则是将功能封装进对象,强调具备功能的对象,面向对象是基于面向过程的.面向对象的三大特征 ...

  7. HTML5+CSS3前端入门教程---从0开始通过一个商城实例手把手教你学习PC端和移动端页面开发第5章CSS盒子模型

    本教程案例在线演示 有路网PC端 有路网移动端 教程配套源码资源 教程配套源码资源 div div 可定义文档中的分区(division). div 标签可以把网页分割为独立的.不同的部分. 可以看成 ...

  8. turtle库常用函数

  9. day19:os模块&shutil模块&tarfile模块

    os模块:对系统进行操作(6+3) system  popen  listdir  getcwd  chdir  environ / name  sep  linesep import os #### ...

  10. Python性能分析与优化PDF高清完整版免费下载|百度云盘

    百度云盘|Python性能分析与优化PDF高清完整版免费下载 提取码:ubjt 内容简介 全面掌握Python代码性能分析和优化方法,消除性能瓶颈,迅速改善程序性能! 对于Python程序员来说,仅仅 ...