`
- 浏览:
17659 次
- 性别:
- 来自:
杭州
-
正则表达式
- RegExp(regexp, option)类实现,可以简写成/regexp/option
- option:
g: global, i: ignore case
- 方法:string.test(regexp),
string.exec(regexp)[返回所有匹配的地方], string.serch(regexp)[正则版的indexOf()],
string.replace(regexp, str|funtion), string.split(regexp)
简单模式
- 元字符:( [ {
/ ^ $ | ) ? * + . 使用的时候用'/'转义
- 特殊字符:/x62[16进制],
/u0062[unicode], /t, /n, /r, /f[换页], /a[alert],/e[escape], /cX[控制字符],
/b[回退字符], /v[垂直制表符], /0[空字符]
- 预定义字符: .==[^/n/r], /d == [0-9], /D
== [^0-9], /s == [ /t/n/x0B/f/r], /S == [^ /t/n/x0B/f/r],
/w=[a-zA-Z_0-9], /W=[^a-zA-Z_0-9]
量词
简单量词
- ?:
出现0次或1次
- *: 出现0次或多次
- +: 出现1次或多次
- {n}:出现n次
- {n,
m}: 至少出现n次,但不超过m次
- {n,}:至少出现n次
贪
婪的、惰性的和支配性的量词
- 贪婪量词:尽可能多地匹配更多的字符(default)
- 惰性量词:尽可能少的匹
配更少的字符(简单量词后加?)
- 支配量词:只尝试匹配整个字符串(简单量词后加+)
复杂模式
-
分
组:
用()分组,分组可嵌套
-
反向引用:
利用分组,$n
-
候选:
类似或 |
-
非
捕获性分组:
避免反向引用的开销。(?:xxx)
-
前瞻(look ahead):
(?=xxx)-->positive,
(?!xxx)-->negative
-
边界:
- ^:行开头
- $:
行结尾
- /b: 单词边界
- /B: 非单词边界
-
多行模式:
/m选项
RegExp
对象
instance属性
- global: /g
- ignoreCase: /i
- lastIndex:
代表下次匹配将会从哪个字符开始,只在exec()或test()时设置。
- multiline:/m
- source:
正则表达式的源字符形式。
静态属性
- 静态属性对所有正则表达式都有效,有两个名
字,一个长名,一个短名。每次执行exec()或test()时,所有的属性(除multiline外)都会被重新设置
- input/$_:
最后用于匹配的字符串(传递给exec()或test()的字符串)
- lastMatch/$&: 最后匹配的字符串
- lastParen/$+:
最后匹配的分组
- leftContext/$`:在上次匹配的前面的字符串
- multiline/$*:
用于指定是否所有的表达式都使用多行模式。ie和opera暂不支持,所以最好用/m设置多行
- rightContext/$':在上次
匹配的后面的字符串
常用模式
- 日期,dd/mm/yyyy:
采用非捕获性分组:date =
/(?:0[1-9]|[12][0-9]|3[01])//(?:0[1-9]|1[0-2])//(?:19|20/d{2})/;
- 信
用卡号:参见http://www.beachnet.com/~hstiles/cardtype.html
- 电子邮件地
址:email = /^(?:/w+/.?)*/w+@(?:/w+/.?)*/w+$/
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
在JavaScript中,正则表达式(Regular Expression)是一种强大的文本处理工具,用于执行模式匹配和字符串操作。本篇教程将深入探讨JavaScript中的正则表达式,帮助你理解和掌握这一核心概念。 一、正则表达式基础 ...
JavaScript 正则表达式迷你书 本书是 JavaScript 正则表达式的入门级教程,旨在帮助读者快速掌握正则表达式的基本概念和应用。下面是本书的知识点摘要: 第一章:正则表达式字符匹配攻略 * 两种模糊匹配:横向...
JavaScript正则表达式是编程语言JavaScript中的一个重要组成部分,它用于处理文本字符串,进行模式匹配、查找、替换等操作。在JavaScript中,正则表达式是一种强大的工具,可以帮助开发者实现复杂的数据验证、文本...
javascript常用正则表达式大全,基本覆盖基本需求的正则表达式
"正则表达式必知必会" 正则表达式是一种强大的文本处理工具,广泛应用于各个领域。下面是对正则表达式的详细解释: 正则表达式的用途 正则表达式主要用于处理文本,提供了两大主要功能:查找和替换。查找功能允许...
《JavaScript正则表达式迷你书》是一本关于JavaScript正则表达式的专业书籍,正则表达式是处理字符串的强大工具,广泛应用于编程语言中的文本处理。本书从字符匹配、位置匹配、括号的作用、回溯法原理、拆分、构建和...
- **JavaScript中的正则表达式**:JavaScript的正则表达式对象提供了丰富的功能,包括全局匹配、忽略大小写等选项。 - **.NET框架中的正则表达式**:通过System.Text.RegularExpressions命名空间提供支持。 #### 六...
正则表达式(Regular Expression)是JavaScript中的一种强大工具,用于匹配字符串中的模式。在JavaScript中,正则表达式可以用来验证用户输入,例如检查邮箱地址的有效性或手机号码的格式。以下是一些JavaScript中...
1. JavaScript正则表达式在线测试工具:http://tools.jb51.net/regex/javascript 2. 正则表达式在线生成工具:http://tools.jb51.net/regex/create_reg 这些工具可以帮助开发者快速测试和生成正则表达式,从而提高...
在编程语言如JavaScript中,正则表达式是进行字符串操作的重要手段。这篇文档“正则表达式大全”旨在汇总常用正则表达式模式,帮助开发者快速查询和应用。 1. **基础概念** - **字符类**:包括点号(.)代表任意...
### 正则表达式学习手册知识点总结 #### 1. 引言 正则表达式是一种强大的文本处理工具,能够帮助用户实现字符串的查找、替换等功能。正则表达式的应用场景非常广泛,尤其在编程领域中不可或缺。对于初学者来说,...
以下是一些常见的JavaScript正则表达式及其应用: 1. **匹配中文字符**:`[\u4e00-\u9fa5]` 这个正则表达式用于匹配Unicode范围内的中文字符,包括所有汉字。例如,如果你想在一个字符串中查找所有中文字符,可以...
10. **编程语言支持**:大多数编程语言都内置了正则表达式支持,如Java(Test.java中的例子可能涉及Java的`Pattern`和`Matcher`类),Python的`re`模块,JavaScript的`match`、`replace`等方法。 11. **优化技巧**...
### JavaScript正则表达式教程详解 #### 一、正则表达式概述 正则表达式是一种强大的工具,用于处理文本中的模式匹配与替换。它由一系列普通字符和特殊字符(元字符)组成,用于定义一组规则,从而识别并操作符合...
2. **利用编程语言**:大多数编程语言如Python、Java、JavaScript等都内置了正则表达式的支持,并提供了方法来生成符合正则表达式的随机字符串。例如,Python的`re`模块配合`random.choice`或`random.choices`可以...
- 正则表达式:`^[0-9]*$` - 示例:`12345` 2. **指定长度数字**: - 只允许输入固定长度的数字(例如4位数字)。 - 正则表达式:`^\d{4}$` - 示例:`1234` - 允许输入至少n位数字。 - 正则表达式:`^\d{n,}...
// 正则表达式:YYYY-MM-DD HH:mm:ss var r = str.match(/^(\d{1,4})-(\d{1,2})-(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/); if (r === null) return false; var year = parseInt(r[1], 10); var month = ...