JS正则表达式常见函数与用法小结

JS正则表达式常见函数与用法小结

一、正则表达式基础

1.1 基本语法

JS 的正则表达式使用反斜杠(backslash)来表示元字符,比如\d表示匹配数字字符,\w表示匹配任意字母数字字符,\s表示匹配空白字符等。

1.2 匹配模式

  • i:忽略大小写
  • g:全局匹配(即匹配完一次继续匹配下一次)
  • m:多行匹配模式

1.3 常见元字符

  • .:匹配除了换行符以外的任意一个字符
  • []:匹配方括号内的任意一个字符
  • |:或者
  • \:转义字符
  • ^:以什么开头
  • $:以什么结尾
  • \d:数字字符
  • \w:任意字母数字字符
  • \s:空白字符
  • \b:单词边界

二、常见函数与用法

2.1. test()

用正则表达式测试一个字符串是否匹配。该方法返回一个布尔值。

const str = 'hello world';
const pattern = /world/;
console.log(pattern.test(str)); // true

2.2. exec()

用正则表达式测试一个字符串是否匹配,并返回匹配结果。该方法返回一个数组,第0项为正则表达式匹配到的字符串,后面是正则表达式匹配分组的结果。

const str = 'hello world';
const pattern = /world/;
console.log(pattern.exec(str)); // ['world', index: 6, input: 'hello world', groups: undefined]

2.3. match()

在一个字符串中查找与正则表达式匹配的子串,并返回一个数组,数组的所有元素都是与正则表达式匹配的字符串。

const str = 'hello world';
const pattern = /l/g;
console.log(str.match(pattern)); // ['l', 'l', 'l']

2.4. replace()

用一个新字符串替换所有匹配到的字符串。

const str = 'JavaScript is the best programming language';
const pattern = /JavaScript/;
const newStr = str.replace(pattern, 'Java');
console.log(newStr); // 'Java is the best programming language'

2.5. search()

查找字符串中第一个与正则表达式匹配的子串的位置。该方法返回一个整数,表示匹配到的字符串的位置,如果没有匹配到则返回-1。

const str = 'hello world';
const pattern = /world/;
console.log(str.search(pattern)); // 6

三、示例说明

3.1. 检查密码强度

一个强密码至少包含一个大写字母、一个小写字母、一个数字和一个特殊字符,可以通过正则表达式检查密码是否符合要求。

function checkPassword(password) {
  const pattern = /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[!@#$%^&*]).{8,}$/;
  return pattern.test(password);
}

console.log(checkPassword('abc123!')); // false
console.log(checkPassword('ABc123!')); // true

3.2. 格式化电话号码

将电话号码格式化为xxx-xxx-xxxx的形式,可以使用正则表达式的replace()函数。

function formatPhoneNumber(phone) {
  const pattern = /(\d{3})(\d{3})(\d{4})/;
  return phone.replace(pattern, '$1-$2-$3');
}

console.log(formatPhoneNumber('1234567890')); // '123-456-7890'

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JS正则表达式常见函数与用法小结 - Python技术站

(0)
上一篇 2023年5月27日
下一篇 2023年5月27日

相关文章

  • Javascript基础知识中关于内置对象的知识

    Javascript基础知识中关于内置对象的知识 Javascript中内置对象是指在语言中定义好的一些对象,可以直接使用,不需要进行任何的定义或引入。常见的内置对象有:String、Number、Boolean、Object、Array、Function、RegExp、Date等。 String对象 String对象表示文本字符串。它可以通过字面量、变量等…

    JavaScript 2023年6月10日
    00
  • 原生JS简单实现ajax的方法示例

    实现 AJAX 的方法有很多种,其中最基础的一种方法是使用原生的 JavaScript(简称原生 JS)来实现。下面详细讲解如何简单实现 AJAX。 使用 XMLHttpRequest 对象发送 AJAX 请求 使用 XMLHttpRequest 对象发送请求是使用原生 JS 实现 AJAX 的最基础的一种方法。步骤如下: 创建 XMLHttpRequest…

    JavaScript 2023年6月11日
    00
  • window.location.href的用法(动态输出跳转)

    关于window.location.href的用法,先来介绍一下它的基本概念。 window.location.href是一个引用当前页面的URL字符串,它可以动态地改变页面的路径,实现页面的跳转。通过设置window.location.href的值,可以让当前页面跳转到指定的URL地址。 以下是window.location.href的一些常见应用场景: …

    JavaScript 2023年6月11日
    00
  • 详解javascript的变量与标识符

    我们来详细讲解JavaScript的变量与标识符。 变量 在JavaScript中,变量是用于存储数据的容器,它们可以被任何地方引用或更改。在使用变量之前,需要先声明它们,以告诉JavaScript编译器它们的类型。 声明变量有三种方式: 使用var关键字 var name = ‘张三’; 使用let关键字(ES6新增) let age = 20; 使用co…

    JavaScript 2023年5月18日
    00
  • JS中精巧的自动柯里化实现方法

    JS中的柯里化是一种高级的函数式编程技巧,它允许我们将多参数函数转换为单参数函数,这在某些情况下非常方便并且优雅。下面我来详细讲解JS中精巧的自动柯里化实现方法。 基本柯里化方法 在JS中实现柯里化通常需要使用闭包和递归的方法。下面是一种基本柯里化方法: function curry(fn, args) { return function() { var n…

    JavaScript 2023年6月10日
    00
  • pdf.js 使用

    pdf文件能够比较好的保留源格式,传输也比较方便,现PC端浏览器基本都可直接查看pdf文件,只是界面风格不怎么统一,但是手机端查看pdf文件就不能很好的只“预览”,往往都是自动下载到本地再查看,今天分享pdf.js,主要用于在线pdf预览,平时我使用比较多的场景就是培训手册。 我用的是1.1.159,版本比较旧,解压后文件只有3.66 MB。     使用方…

    JavaScript 2023年4月18日
    00
  • JS访问DOM节点方法详解

    下面我就详细讲解一下“JS访问DOM节点方法详解”的完整攻略,主要分为以下几个部分: 1. DOM节点的基本概念 DOM(Node Document Object Model) 是一种将HTML文档描述为树形结构的API(应用程序编程接口),在JavaScript中可以通过DOM的API来访问和操作HTML文档。DOM树的根节点是document对象,我们可…

    JavaScript 2023年5月19日
    00
  • 通过Javascript读取本地Excel文件内容的代码示例

    要通过Javascript读取本地Excel文件内容,我们可以使用以下步骤: 创建一个input元素,设置它的type属性为file,并将它添加到HTML页面中。 当用户选择Excel文件后,我们可以通过Javascript获取到该文件,可以使用FileReader对象将文件读取为二进制数据。 将二进制数据转换为Uint8Array类型的数组,并使用XLSX…

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