热门标签 | 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:表示既忽略大小写也全局匹配
    在这里插入图片描述

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

在这里插入图片描述

在这里插入图片描述






推荐阅读
  • Python内置模块详解:正则表达式re模块的应用与解析
    正则表达式是一种强大的文本处理工具,通过特定的字符序列来定义搜索模式。本文详细介绍了Python内置的`re`模块,探讨了其在字符串匹配、验证和提取中的应用。例如,可以通过正则表达式验证电子邮件地址、电话号码、QQ号、密码、URL和IP地址等。此外,文章还深入解析了`re`模块的各种函数和方法,提供了丰富的示例代码,帮助读者更好地理解和使用这一工具。 ... [详细]
  • PHP正则表达式主要用于字符串的模式分割、匹配、查找及替换操作。使用正则表达式在某些简单的环境下可能效率不高,因此如何更好的使用PHP正则表达式需要综合考虑。PHP正则表达式的定义 ... [详细]
  • 本文记录了 JavaScript 中正则表达式的使用方法和常见操作,包括匹配、替换、搜索等。 ... [详细]
  • Python正则表达式详解:掌握数量词用法轻松上手
    Python正则表达式详解:掌握数量词用法轻松上手 ... [详细]
  • 一、媒介  Koa为了坚持本身的简约,并没有绑缚中间件。然则在现实的开辟中,我们须要和五花八门的中间件打交道,本文将要剖析的是常常用到的路由中间件—koa-router。  假如你 ... [详细]
  • 本文详细介绍了 PHP 中对象的生命周期、内存管理和魔术方法的使用,包括对象的自动销毁、析构函数的作用以及各种魔术方法的具体应用场景。 ... [详细]
  • HBase Java API 进阶:过滤器详解与应用实例
    本文详细探讨了HBase 1.2.6版本中Java API的高级应用,重点介绍了过滤器的使用方法和实际案例。首先,文章对几种常见的HBase过滤器进行了概述,包括列前缀过滤器(ColumnPrefixFilter)和时间戳过滤器(TimestampsFilter)。此外,还详细讲解了分页过滤器(PageFilter)的实现原理及其在大数据查询中的应用场景。通过具体的代码示例,读者可以更好地理解和掌握这些过滤器的使用技巧,从而提高数据处理的效率和灵活性。 ... [详细]
  • 如何利用正则表达式(regexp)实现高效的模式匹配?本文探讨了正则表达式在编程中的应用,并分析了一个示例程序中存在的问题。通过具体的代码示例,指出该程序在定义和使用正则表达式时的不当之处,旨在帮助读者更好地理解和应用正则表达式技术。 ... [详细]
  • 在Python中,通过实现一个便捷的函数来解码Base64编码的数据,并将其转换为数组形式。该函数能够将Base64字符串解码为字节数组,便于进一步处理。例如,可以使用如下代码片段进行解码:`base64_decode_array('6gAAAOsAAAD')`。这为处理二进制数据提供了高效且简洁的方法。 ... [详细]
  • Python与R语言在功能和应用场景上各有优势。尽管R语言在统计分析和数据可视化方面具有更强的专业性,但Python作为一种通用编程语言,适用于更广泛的领域,包括Web开发、自动化脚本和机器学习等。对于初学者而言,Python的学习曲线更为平缓,上手更加容易。此外,Python拥有庞大的社区支持和丰富的第三方库,使其在实际应用中更具灵活性和扩展性。 ... [详细]
  • 本文作为“实现简易版Spring系列”的第五篇,继前文深入探讨了Spring框架的核心技术之一——控制反转(IoC)之后,将重点转向另一个关键技术——面向切面编程(AOP)。对于使用Spring框架进行开发的开发者来说,AOP是一个不可或缺的概念。了解AOP的背景及其基本原理,对于掌握这一技术至关重要。本文将通过具体示例,详细解析AOP的实现机制,帮助读者更好地理解和应用这一技术。 ... [详细]
  • 本文旨在构建一个JavaScript函数,用于对用户输入的电子邮件地址和密码进行有效性验证。该函数将确保输入符合标准格式,并检查密码强度,以提升用户账户的安全性。通过集成正则表达式和条件判断语句,该方法能够有效防止常见的输入错误,同时提供即时反馈,改善用户体验。 ... [详细]
  • 本文介绍了几种常用的图像相似度对比方法,包括直方图方法、图像模板匹配、PSNR峰值信噪比、SSIM结构相似性和感知哈希算法。每种方法都有其优缺点,适用于不同的应用场景。 ... [详细]
  • 技术分享:使用 Flask、AngularJS 和 Jinja2 构建高效前后端交互系统
    技术分享:使用 Flask、AngularJS 和 Jinja2 构建高效前后端交互系统 ... [详细]
  • 我没有特别使用任何编程语言,而是我必须要做的大学常规语言作业。 基 ... [详细]
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社区 版权所有