热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

开发笔记:JavaScript学习(六十七)—正则表达式学习总结

篇首语:本文由编程笔记#小编为大家整理,主要介绍了JavaScript学习(六十七)—正则表达式学习总结相关的知识,希望对你有一定的参考价值。

篇首语:本文由编程笔记#小编为大家整理,主要介绍了Javascript学习(六十七)—正则表达式学习总结相关的知识,希望对你有一定的参考价值。






Javascript学习(六十七)—正则表达式知识点总结


学习内容

一、什么是正则表达式

二、如何创建正则表达式

三、正则表达式的常用方法

四、正则表达式的匹配模式

五、 字符串对象中和正则表达式结合使用的方法

六、正则表达式常用的修饰符

一、什么是正则表达式


  • 正则表达式也称为规则表达式,就是普通字符和特殊字符构成的一个表达式
  • 作用就是用来检验字符串是否符合格式要求,或者在字符串中查找是否有符合格式要求的字符串。

二、如何创建正则表达式


  • 利用构造方法创建:var 正则表达式的名称=new RegExp('正则表达式内容','修饰符');
    在这里插入图片描述
  • 利用字面量形式创建:var 正则表达式的名称=/ 正则表达式内容/修饰符;

三、正则表达式的常用方法—test方法


  • 作用:验证字符串是否符合正则表达式的格式要求

  • 格式:正则表达式.test(字符串)

  • 返回值:true(符合要求)、false(不符合)

在这里插入图片描述
四、正则表达式的构成

(一)普通字符


  • 如字母、数字0-9、a-z、A-Z、_

(二)、特殊字符(元字符)

(1)、定位符

^:表示以某个字符开头,如/^a/表示字符串以字母a开头

在这里插入图片描述

$:表示以某个字符结尾,如/$a/表示字符串以a结尾

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
(2)、表示数量的限定符


  • *:表示它前面的字符的个数为0到无穷多个,如/a*/表示a的个数最少0个,最多无限个

  • +:表示他前面的字符的个数为1到无穷多个。如/a+/表示 a的个数最少1个,最多无限个

  • ?:表示他前面的字符为0到1个。如/a?/表示a的个数最少0个,最多一个

  • {n}:表示他前面的字符只能是n个.如/a{3}/表示字符串中包含3个字符a

  • {n, }:表示他前面的字符为n到无穷多个,如/a{3, }/表示字符串 a的个数大于等于3个

  • {n,m}:表示他前面的字符的个数为n-m个.如a{1,5}表示a的个数为1-5个

(3)、转义字符

转义字符:所谓转义字符就是指在普通字符的前面加反斜线,使得他具有特定的功能和含义,也可以在具有特定的功能和含义的字符前面加反斜线,将他转换为普通字符 如:\\d表示任意一个数字/\\表示将正则表达式中的斜线转换为普通的斜线


  • \\d:表示任意一个数字

  • \\D:表示任意一个非数字

  • \\w:表示任意一个字母、数字、下划线

  • \\W:任意一个非字母数字下划线

  • \\s:表示任意一个空白符,比如制表符、空格

  • \\S:任意一个非空白符

(4)、备选字符集


  • [值1 值2 值3 值4]:中括号里面的值表示字符串中可以匹配到的任意一个值

  • [值1-值n]:表示值1到值n间的任意一个值为备选选项

  • [^值1 值2 值3]:表示字符串中不可以包含中括号里面的任意一个值

  • [\\u4e00-\\9fa5]:表示任意的一个汉字

四、正则表达式的匹配模式
1)贪婪模式:指正则表达式在对字符串进行匹配时尽可能多的匹配字符,默认就是贪婪模式

2)懒惰模式:指正则表达式在对字符串进行匹配时尽可能少的匹配字符,默认是贪婪模式,如果要将贪婪模式转化为懒惰模式,需要在数量修饰符后面加问号
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

(五)、字符串对象中和正则表达式结合使用的方法

(一)、split方法


  • 作用:将字符串转化为数组
  • 格式:字符串名称.splite('分隔符');
    在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

(二)、match方法


  • 作用:从字符串中查找到符合条件的
  • 格式:字符串.match(子串);
  • 返回值:由子串形成的数组,默认只返回找到符合条件的第一个子串,如果要找到符合条件的所有的子串需要使用正则表达式作为参数
    在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
(三)、repalce方法


  • 作用:替换字符串中指定的子串

  • 格式:字符串.repalce.('要被替换的子串','新的子串');

  • 返回值:默认情况下,只替换符合条件的第一个子串,如果要将所有的子串替换掉,则需要使用正则表达式 且这个正则表达式需要使用修饰符g,如果要替换的子串不存在则返回原串

(四)、search方法


  • 作用:在字符串从左向右查找子串位置,如果存在则返回该子串对应的下标,否则返回-1,功能类似于indexOf方法
  • 格式:字符串.search('子串');
  • 注意:该方法可以和正则表达式结合使用,但是就算正则表达式中有修饰符g,在匹配的时候也只能返回查找到的第一个子串
    在这里插入图片描述

六、正则表达式常用的修饰符


  • i:表示忽略大小写
  • g:表示全局匹配
  • ig/gi:表示既忽略大小写也全局匹配
    在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述






推荐阅读
  • splitjava的简单介绍
    本文目录一览:1、Javasplit方法2、 ... [详细]
  • Python爬虫中使用正则表达式的方法和注意事项
    本文介绍了在Python爬虫中使用正则表达式的方法和注意事项。首先解释了爬虫的四个主要步骤,并强调了正则表达式在数据处理中的重要性。然后详细介绍了正则表达式的概念和用法,包括检索、替换和过滤文本的功能。同时提到了re模块是Python内置的用于处理正则表达式的模块,并给出了使用正则表达式时需要注意的特殊字符转义和原始字符串的用法。通过本文的学习,读者可以掌握在Python爬虫中使用正则表达式的技巧和方法。 ... [详细]
  • 本文整理了315道Python基础题目及答案,帮助读者检验学习成果。文章介绍了学习Python的途径、Python与其他编程语言的对比、解释型和编译型编程语言的简述、Python解释器的种类和特点、位和字节的关系、以及至少5个PEP8规范。对于想要检验自己学习成果的读者,这些题目将是一个不错的选择。请注意,答案在视频中,本文不提供答案。 ... [详细]
  • Ihaveaworkfolderdirectory.我有一个工作文件夹目录。holderDir.glob(*)>holder[ProjectOne, ... [详细]
  • 正则表达式及其范例
    为什么80%的码农都做不了架构师?一、前言部分控制台输入的字符串,编译成java字符串之后才送进内存,比如控制台打\, ... [详细]
  • 巧用arguments在Javascript的函数中有个名为arguments的类数组对象。它看起来是那么的诡异而且名不经传,但众多的Javascript库都使用着它强大的功能。所 ... [详细]
  • Python正则表达式学习记录及常用方法
    本文记录了学习Python正则表达式的过程,介绍了re模块的常用方法re.search,并解释了rawstring的作用。正则表达式是一种方便检查字符串匹配模式的工具,通过本文的学习可以掌握Python中使用正则表达式的基本方法。 ... [详细]
  • 本文介绍了在处理不规则数据时如何使用Python自动提取文本中的时间日期,包括使用dateutil.parser模块统一日期字符串格式和使用datefinder模块提取日期。同时,还介绍了一段使用正则表达式的代码,可以支持中文日期和一些特殊的时间识别,例如'2012年12月12日'、'3小时前'、'在2012/12/13哈哈'等。 ... [详细]
  • 小程序wxs中的时间格式化以及格式化时间和date时间互转
    本文介绍了在小程序wxs中进行时间格式化操作的问题,并提供了解决方法。同时还介绍了格式化时间和date时间的互相转换的方法。 ... [详细]
  • 本文详细介绍了Python中正则表达式和re模块的使用方法。首先解释了转义符的作用,以及如何在字符串中包含特殊字符。然后介绍了re模块的功能和常用方法。通过学习本文,读者可以掌握正则表达式的基本概念和使用技巧,进一步提高Python编程能力。 ... [详细]
  • 本文介绍了在Java中检查字符串是否仅包含数字的方法,包括使用正则表达式的示例代码,并提供了测试案例进行验证。同时还解释了Java中的字符转义序列的使用。 ... [详细]
  • loader资源模块加载器webpack资源模块加载webpack内部(内部loader)默认只会处理javascript文件,也就是说它会把打包过程中所有遇到的 ... [详细]
  • python中使用正则表达式的步骤:1.导入re模块:importre2.初始化一个Regex对象:re.compile()3.刚刚创建的 ... [详细]
  • 这期内容当中小编将会给大家带来有关如何在php表单中使用正则表达式,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可 ... [详细]
  • 我将SpringMVC升级到Spring3.2.5.我的一些剩余调用即使存在,也会返回无法识别的字段异常.这是错误.Resolvingexceptionfrom ... [详细]
author-avatar
一直都在囚禁
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有