g:表示全局(global)模式,即模式将被应用于所有字符串,而非在发现第一个匹配项时立即停止。
i:表示不区分大小写(case-insensitive)模式,即在确定匹配项时忽略模式与字符串的大小写。
m:表示多行(multiline)模式,即在到达一行文本末尾时还会继续查找下一行中是否存在与模式匹配的项。
实例:
var pattern = /^a.+b$/; undefined "adfasdfasdfasdfasdf".match(pattern) null "adfasdfasdfasdfasdb".match(pattern) ["adfasdfasdfasdfasdb"] "adfasdfasdfasdfasdb\r\naasdfasdfasdf".match(pattern) null "adfasdfasdfasdfasdb\r\naasdfasdfasdfb".match(pattern) null var pattern = /^a.+b$/m; undefined "adfasdfasdfasdfasdb\r\naasdfasdfasdfb".match(pattern) ["adfasdfasdfasdfasdb"] var pattern = /^a.+b$/g; undefined "adfasdfasdfasdfasdb\r\naasdfasdfasdfb".match(pattern) null var pattern = /^a.+b$/mg; undefined "adfasdfasdfasdfasdb\r\naasdfasdfasdfb".match(pattern) ["adfasdfasdfasdfasdb", "aasdfasdfasdfb"]
从这几个实例不难看出:m是多行匹配,在配合^ $的正则表达式中,强制匹配每一行的开头结束
但对g作用又有点迷糊了,下面是g的实例:
var pattern = /^a.+b$/g; undefined "adfasdfasdfasdfasdb\r\naasdfasdfasdfb".match(pattern) null var pattern = /a.+b$/g; undefined "adfasdfasdfasdfasdb\r\naasdfasdfasdfb".match(pattern) ["aasdfasdfasdfb"] var pattern = /^a.+b/g; undefined "adfasdfasdfasdfasdb\r\naasdfasdfasdfb".match(pattern) ["adfasdfasdfasdfasdb"] var pattern = /a.+b/g; undefined "adfasdfasdfasdfasdb\r\naasdfasdfasdfb".match(pattern) ["adfasdfasdfasdfasdb", "aasdfasdfasdfb"]
附:
^:匹配一个输入或一行的开头,/^a/匹配"an A",而不匹配"An a"
$:匹配一个输入或一行的结尾,/a$/匹配"An a",而不匹配"an A"
对如下执行结果还是没太弄明白:
var pattern = /^a.+b$/g; undefined "adfasdfasdfasdfasdb\r\naasdfasdfasdfb".match(pattern) null
相关推荐
JavaScript正则表达式是编程语言中的一个重要组成部分,用于处理文本模式匹配和字符串操作。这篇博客“javascript正则表达式综合练习”可能是一个实践教程或示例集合,旨在帮助开发者提升在JavaScript中使用正则...
在JavaScript中,正则表达式还可以配合标志(Flags)使用,如`g`全局搜索,`i`忽略大小写,`m`多行匹配。例如: ```javascript var re = new RegExp("pattern", "gi"); ``` 这将创建一个全局搜索且忽略大小写的正则...
本资源“源码(精通正则表达式&实战正则表达式)”专注于JavaScript环境下的正则表达式学习,通过一系列视频教程和配套源码,帮助开发者提升对正则表达式的理解和应用能力。 首先,"精通正则表达式五部视频"可能涵盖...
JavaScript 正则表达式详解 JavaScript 中的正则表达式是指使用特殊字符来描述字符串模式的表达式。正则表达式可以用来匹配、检索和操作字符串。 RegExp 对象 在 JavaScript 中,正则表达式可以被定义为一个 ...
这篇学习笔记将深入探讨JavaScript正则表达式的概念、语法和实际应用。 一、正则表达式基础 1. 创建正则表达式: - 字面量表示法:`/pattern/flags` - 构造函数:`new RegExp('pattern', 'flags')` 2. 常见的...
### JS正则表达式大全 #### 一、正则表达式概述 正则表达式是一种在文本中查找或替换字符串的强大工具,在JavaScript中被广泛应用于数据验证、字符串搜索与替换等场景。通过学习并掌握正则表达式的使用方法,可以...
这篇博客文章 "收集的一些js正则表达式" 提供了一些实用的JavaScript正则表达式示例,这将有助于开发者在实际项目中进行文本匹配、搜索、替换等操作。 首先,了解正则表达式的基础知识至关重要。正则表达式由一系列...
JavaScript正则表达式是JavaScript语言中一种极为重要的文本处理工具,它允许通过简洁的语法定义文本的匹配模式。这些模式可用来对字符串进行检索、替换、提取等操作。了解和掌握JavaScript正则表达式,对于提高...
在"js正则表达式(例子).htm"中,可能包含了各种JavaScript正则表达式的实例,例如邮箱验证、手机号码格式检查、URL解析等。通过这些实例,你可以学习如何构建复杂的正则表达式来满足不同的需求,并了解它们在实际...
下面是一段JavaScript代码示例,展示如何使用上述正则表达式验证输入: ```javascript function validateAmount(amountStr) { const regex = /^-?[0-9]+(\.[0-9]{1,2})?$/; return regex.test(amountStr); } ...
精通JS正则表达式的知识点详解 ...总之,精通JavaScript正则表达式不仅能够提高字符串处理的能力,还能让代码更加高效和优雅。通过对正则表达式的学习和实践,开发者可以轻松地解决各种字符串操作问题,提升编程效率。
**JavaScript正则表达式迷你书(1.1版)** 正则表达式是JavaScript中一个强大的工具,用于处理文本字符串,进行模式匹配和查找、替换等操作。它们在编程逻辑中扮演着至关重要的角色,尤其是在处理字符串数据时,...
常见的标志有`g`(全局搜索)、`i`(忽略大小写)和`m`(多行模式)。 VBScript(Visual Basic Script)中的正则表达式功能略显有限,但依然强大。使用`RegExp`对象来处理正则表达式,其中包含`Pattern`属性来设置...
9. **实例应用**:正则表达式广泛应用于文本编辑器(如vim、emacs)、编程语言(如JavaScript、Python、Java)和搜索引擎(如grep、findstr)。例如,用于验证邮箱格式、手机号码、提取URL等。 通过《精通正则...
1. `g`:全局搜索,使正则表达式在字符串中查找所有匹配项,而不仅仅是第一个。 2. `i`:忽略大小写,使得匹配不区分大小写。 3. `m`:多行模式,使得`^`和`$`可以匹配每一行的开始和结束。 4. `y`:粘贴匹配,也...
正则表达式可以使用标志来改变其行为,比如`g`全局搜索,`i`忽略大小写,`m`多行模式等。在Java中,这些标志是在编译模式时传递的,而在JavaScript中,它们直接附加到正则表达式字面量的末尾。 例如,在Java中创建...
正则表达式(Regular Expression...在不同的编程语言中,如JavaScript、Python、Java等,正则表达式的实现可能会有所不同,但基本的语法和概念是相通的。在实际使用时,根据具体语言的文档进行学习和实践是非常必要的。
6. **模式修饰符**:学习如何使用全局`g`、忽略大小写`i`和多行`m`等修饰符改变正则表达式的匹配行为。 7. **正则表达式的实例分析**:通过实际案例解析,演示如何解决常见的文本处理问题,如邮箱验证、URL提取等。...