Js 正则表达式知识汇总

Js 正则表达式知识汇总

什么是正则表达式?

正则表达式是一种用来匹配字符串模式的工具,它由字符和特殊字符组成。在JavaScript中,可以使用RegExp对象来表示正则表达式模式。正则表达式可以用来在字符串中查找匹配的文本、替换文本、验证内容格式等。

正则表达式的语法

正则表达式语法很强大,要掌握所有的用法需要花费一定的时间和精力。下面是一些常见的元字符和语法:

  • /pattern/flags:表示正则表达式模式和标志的格式。模式是要匹配的文本模式,由一系列的字符、字符类或特殊字符组成。标志是一个可选的修饰符,可以改变模式的行为,例如大小写敏感、全局匹配等。
  • ^:表示文本的开头,放在模式的开头。
  • $:表示文本结尾,放在模式的末尾。
  • .:表示任意字符。
  • []:表示字符集,用来匹配方括号内的任意字符。
  • [^]:表示否定字符集,用来匹配方括号外的任意字符。
  • |:表示逻辑或,可以将多个模式组合在一起。
  • ():表示分组,可以将多个字符或模式组合在一起,并将它们视为一个整体。

正则表达式的应用

匹配文本

通过正则表达式可以轻松地匹配字符串文本,例如下面的代码将会找到所有以字母a开头的单词:

const str = 'Alice has a cat and a dog. Andy has an apple.';
const pattern = /\ba\w+/g;
const matches = str.match(pattern);
console.log(matches); // ['Alice', 'a', 'and', 'Andy', 'an']

这里的\b表示单词的边界,\w+表示一个或多个字母、数字或下划线。

替换文本

通过正则表达式可以轻松地替换字符串文本,例如下面的代码将会替换字符串中的abc为def:

const str = 'abcde abcd ab abc abcdefg';
const pattern = /abc/g;
const newStr = str.replace(pattern, 'def');
console.log(newStr); // 'defde defd de def defdefg'

验证内容格式

通过正则表达式可以轻松地验证表单输入框中的内容格式,例如下面的代码将会验证输入框中的内容是否为一个有效的邮箱地址:

const emailInput = document.querySelector('#email');
const pattern = /^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$/;
emailInput.addEventListener('blur', () => {
  if (!pattern.test(emailInput.value)) {
    alert('请输入一个有效的邮箱地址');
  }
});

这里的正则表达式用来匹配一个合法的邮箱地址,由字母、数字、下划线、连字符和点号组成。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Js 正则表达式知识汇总 - Python技术站

(0)
上一篇 2023年6月10日
下一篇 2023年6月10日

相关文章

  • javascript抽象工厂模式详细说明

    当面对需要根据用户的选择生成不同的产品时,我们可以使用抽象工厂模式。JavaScript抽象工厂模式是一种用于创建一组相关对象的设计模式,也被称为工厂的工厂。在抽象工厂模式中,我们创建抽象类来指定一组方法来创建一组相关的对象。然后我们创建一个或多个工厂类实现这些抽象方法,并生成一组不同的对象。这使得我们可以将工厂对象集中在一个位置,使得更容易维护和测试。 实…

    JavaScript 2023年6月10日
    00
  • 两种简单的跨域方法(jsonp、php)

    这里就给您详细讲解跨域方法中的jsonp和php。 一、JSONP跨域 概述 JSONP是一种简单的跨域方式,它通过动态添加<script>标签,利用浏览器允许跨域请求资源的特性获取外域的数据,并将数据作为参数传递给回调函数,从而实现跨域获取数据。 实现步骤 在页面中定义一个全局函数,作为回调函数。 通过动态创建<script>标签的…

    JavaScript 2023年5月27日
    00
  • Document对象内容集合(比较全)

    对于网站开发者而言,了解Document对象内容集合是相当重要的。这个集合包含了许多的内容,例如文档信息、头部信息、body信息、表单信息、链接信息、脚本等等,下面详细讲解一下。 一、Document信息(document信息集合) Document信息集合提供了一堆有关于文档的重要信息,其中包括文档的标题、URL、网页DOM、脚本代码、cookie、use…

    JavaScript 2023年6月11日
    00
  • JavaScript中Function()函数的使用教程

    下面就为大家详细讲解JavaScript中Function()函数的使用教程。 一、什么是Function()函数 Function()函数是JavaScript中的一种内置函数,它用来创建一个函数对象。在JavaScript中,函数也是对象,因此它们可以像其他对象一样传递、存储和处理。 二、Function()函数的基本语法 function functi…

    JavaScript 2023年5月27日
    00
  • PHP使用正则表达式获取微博中的话题和对象名

    使用正则表达式获取微博中的话题和对象名是一个常见的需求,本篇攻略将详细介绍如何使用PHP实现这一功能。 步骤一:获取微博内容 首先,我们需要获取微博的内容。可以使用curl等工具,通过API或者爬虫获取微博的HTML源代码。在本例中,我们使用curl来获取微博的HTML源代码。 $ch = curl_init(); curl_setopt($ch, CURL…

    JavaScript 2023年6月10日
    00
  • 轻松理解JavaScript之AJAX

    轻松理解JavaScript之AJAX AJAX是Asynchronous JavaScript and XML的简称,意思是异步的JavaScript和XML。 AJAX的本质 AJAX的本质是通过XMLHttpRequest对象异步发送HTTP请求,获取服务器返回的数据,然后使用JavaScript操作DOM来改变页面的内容,而不用重新刷新整个页面。 A…

    JavaScript 2023年5月18日
    00
  • Single-spa 源码浅析

    引言 前一段时间, 正好在做微前端的接入和微前端管理平台的相关事项。 而我们当前使用的微前端框架则是 qiankun, 他是这样介绍自己的: qiankun 是一个基于 single-spa 的微前端实现库,旨在帮助大家能更简单、无痛的构建一个生产可用微前端架构系统。 所以本文基于 single-spa 源码, 来介绍 single-spa 当前使用版本 5…

    JavaScript 2023年4月18日
    00
  • JavaScript中的substr()方法使用详解

    JavaScript中的substr()方法使用详解 什么是substr()方法? substr()是JavaScript中用来截取字符串的方法,它可以从一个字符串中截取指定长度的子串,并返回这个子串。substr()方法有两个参数,第一个参数是起始截取位置,第二个参数是截取的长度。如果省略第二个参数,则会截取从起始位置开始到字符串结尾的所有字符。 subs…

    JavaScript 2023年5月28日
    00
合作推广
合作推广
分享本页
返回顶部