JavaScript高级程序设计(第3版)学习笔记12 js正则表达式

yizhihongxing

下面是详细的攻略:

JavaScript高级程序设计(第3版)学习笔记12 js正则表达式

简介

本篇学习笔记介绍JavaScript正则表达式的基础知识,包括正则表达式的定义、创建、元字符、模式修饰符、贪婪与非贪婪匹配、匹配位置等知识点。

正则表达式的定义

正则表达式是一种用来匹配字符串模式的方法,它由一个或多个字符和特殊字符组成,表示一种模式,用于与字符串进行匹配。在JavaScript中,正则表达式是一个对象,由RegExp构造函数实例化而来。

创建正则表达式的两种方式

在JS中可以使用两种方式来创建正则表达式:

  1. 使用字面量方式创建:var pattern = /正则表达式/模式修饰符
  2. 使用RegExp构造函数创建:var pattern = new RegExp('正则表达式', '模式修饰符')

其中模式修饰符有以下几种:

  • g:全局匹配
  • i:不区分大小写
  • m:多行匹配
  • s:允许点(.)匹配换行符
  • u:Unicode匹配
  • y:执行“粘性”搜索,匹配从目标字符串的当前位置开始的字符串

元字符

正则表达式中有许多特殊字符,它们被称为“元字符”,用来构建模式。以下是一些常用的元字符:

  • ^:匹配输入的开始位置
  • $:匹配输入的结束位置
  • .:匹配除换行符(\n、\r)之外的任意单个字符
  • []:定义一个字符集合
  • [^]:定义除了这个字符集合之外的任意单个字符
  • ?:匹配前面的字符零次或一次(非贪婪)
  • *:匹配前面的字符零次或多次(贪婪)
  • +:匹配前面的字符一次或多次(贪婪)
  • {n}:匹配前面的字符n次
  • {n,m}:匹配前面的字符n到m次

正则表达式示例

下面是两个正则表达式示例,用来检查输入的字符串是否为有效邮箱和URL地址:

// 邮箱正则表达式
var emailPattern = /^[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,}$/i;

// URL地址正则表达式
var urlPattern = /^(https?|ftp):\/\/[^\s/$.?#][^\s]*$/i;

// 检测邮箱地址
if (emailPattern.test('example@example.com')) {
  console.log('合法的邮箱地址');
}

// 检测URL地址
if (urlPattern.test('http://www.example.com')) {
  console.log('合法的URL地址');
}

以上代码中,emailPatternurlPattern分别是邮箱地址和URL地址的正则表达式,test()方法用来检测输入的字符串是否匹配这个正则表达式,如果匹配,则返回true,否则返回false

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JavaScript高级程序设计(第3版)学习笔记12 js正则表达式 - Python技术站

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

相关文章

  • 小米推送Java代码

    下面是详细讲解“小米推送Java代码”的完整攻略,包含了以下内容: 背景介绍 准备工作 推送API调用流程 示例说明 背景介绍 小米推送是小米开发团队提供的一项推送服务,它可以让开发者在应用内通过各种方式向用户推送通知、消息等。小米推送支持Android和iOS两个平台,各种消息类型的推送都可以通过API接口实现。 本文主要介绍如何在Java应用程序中使用小…

    JavaScript 2023年6月11日
    00
  • JavaScript异常处理

    JavaScript异常处理可以帮助开发人员减少代码中的错误,提高代码的健壮性和稳定性。在 JavaScript 中,异常是由错误或异常条件引起的程序流控制中的偏差,也就是程序出了问题。 JavaScript异常处理通常使用 try-catch 语句块实现。try 语句块包含可能引发异常的代码,而 catch 语句块用于捕捉异常并处理它们。以下是一个基本的 …

    Web开发基础 2023年3月30日
    00
  • javascript 面向对象技术基础教程第1/2页

    JavaScript 面向对象技术基础教程攻略 概述 JavaScript 是一门基于对象编程的语言。面向对象编程 (OOP) 是一种典型的编程范式,它将问题抽象成一系列对象,然后通过对象之间的交互解决问题。在 JavaScript 中,有许多实现面向对象编程的技术,如对象、类和原型等。在本教程中,我们将通过介绍这些技术,帮助读者在 JavaScript 中…

    JavaScript 2023年6月10日
    00
  • javascript获取select值的方法完整实例

    关于JavaScript获取Select的值,你可以按照下面的步骤实现: 第一步:获取Select元素 要获取Select元素,可以使用document.getElementById()方法,传入Select元素的ID作为参数,如下所示: let select = document.getElementById("mySelect"); …

    JavaScript 2023年6月10日
    00
  • jQuery基础教程笔记适合js新手第1/2页

    首先需要明确的是,”jQuery基础教程笔记适合js新手”指的是一篇博客或教程文章,因此在进行攻略之前,需要先打开这篇文章并仔细阅读,了解其涵盖的内容和需要掌握的知识点。 在阅读完整篇文章后,接下来可以进行以下步骤: 理解jQuery的基本概念和用法 jQuery是一种JavaScript库,用于简化HTML文档操作、处理事件、动画效果、AJAX等操作。在攻…

    JavaScript 2023年5月18日
    00
  • 处理JavaScript值为undefined的7个小技巧

    处理 JavaScript 值为 undefined 的 7 个小技巧 如果你在 JavaScript 开发中遇到了 undefined 值,可以考虑以下七个小技巧来解决。 1. 使用条件语句检测 undefined 值 使用 if 语句检测 JavaScript 的一个数据是否为 undefined 可以避免发生未定义(undefined)错误。 let …

    JavaScript 2023年6月10日
    00
  • JavaScript中如何判断对象是否为空的方法

    JavaScript中判断对象是否为空可以通过以下方法: 使用Object.keys()方法判断对象是否为空 Object.keys()方法可以返回一个由指定对象的所有可枚举属性组成的数组,如果对象没有任何可枚举的属性,则返回空数组,因此可以通过判断Object.keys()方法返回的数组长度是否为0来判断对象是否为空。 示例代码: const emptyO…

    JavaScript 2023年6月10日
    00
  • C# 执行Javascript脚本的方法步骤

    C# 执行 JavaScript 脚本是非常常见的需求,下面是执行 JavaScript 脚本的方法步骤: 1. 引入COM组件 首先需要引入COM组件“Microsoft Internet Controls”。在Visual Studio的项目中点开Solution Explorer,右键References -> Add Reference…,…

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