JavaScript 正则表达式学习笔记
来源:互联网 发布:淘宝店铺监管解封 编辑:程序博客网 时间:2024/04/30 03:04
RegExp对象用于规定在文本中检索的内容
RegExp对象用于存储检索模式
var patt1 = new RegExp("e"); //定义一个
RegExp有三个方法:test() exec() compile()
test()方法检索字符串中的指定值,返回值为true or false
eg: alert((new RegExp("d")).test("abcd")); //return true
exec()方法检索字符串中的指定值。返回被找到的值,如果没有匹配,返回null
eg:alert((new RegExp("d")).exec("abcd")); //return d
compile()方法用于改变RegExp,它既可以改变检索模式,也可以添加或删除第二个参数
可以向RegExp对象添加第二个参数,以设定检索,如果需要找到某个字符的所有存在,则可以使用"g"(global)参数
eg:var patt1 = new RegExp("e","g");
do{
result = patt1.exec("The best things in life are free");
document.write(result);
}
while(result!=null)
g参数的工作原理是:找到第一个"e",并存储其位置,如果再次运行exec(),
则从存储的位置开始检索,并找到下一个"e",并存储其位置
=======================
创建RegExp对象的两种方法:
直接量语法:/pattern/attributes;
创建RegExp对象的语法:new RegExp(pattern,attributes);
参数pattern是一个字符串,指定了正则表达式的模式或其他正则表达式。
参数attributes是一个可选的字符串,包含属性"g","i","m",分别用于全局匹配,区分大小写匹配和多行匹配,
如果pattern是正则表达式而不是字符串,则必须省略该参数。
修饰符
i:执行对大小写不敏感的匹配
g:执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)
m:执行多行匹配
方括号
[abc]:查找方括号之间的任何字符
[^abc]:查找任何不再方括号之间的字符
[0-9]:查找任何从0到9的数字
[a-z]:查找任何从a到z的字符
[A-Z]:查找任何从大写A到Z的字符
元字符
.:查找单个字符,除了换行和行结束符
/w:查找单词字符 单词字符包括a-z,A-Z,0-9,_
/W:查找非单词字符
/d:查找数字
/D:查找非数字字符
/s:匹配空白字符 eg:空格 制表符 回车符 换行符 垂直换行符 换页符
/S:查找所有非空白字符
/b:匹配单词的开头或者结尾
/B:查找不再开头的单词的匹配
/0:查找NUL字符
/n:查找换行符
/f:查找换页符
/r:查找回车符
/v:查找垂直制表符
/xxx:查找以八进制数xxx规定的字符
/xdd:
/uxxxx:
量词
n+:匹配任何包含至少一个n的字符串
n*:匹配任何包含0个或多个的字符串
n?:匹配任何包含0个或一个n的字符串
n{x}:匹配包含x个n的序列的字符串
n{x,y}:匹配包含x或y个n的序列的字符串
n{x,}:匹配包含至少x个n的序列的字符串
n$:匹配任何结尾为n的字符串
^n:匹配任何开头为n的字符串
?=n:匹配任何其后紧接指定字符串n的字符串
?!n:匹配任何其后没有紧接指定字符串n的字符串
RegExp对象属性
global属性:如果g标志被设置,返回true,否则返回false
ignoreCase属性:如果i标志被设置,则该属性返回true,否则返回false
lastIndex属性:该属性存放一个整数,它声明的是上一次匹配文本之后的第一个字符的位置,上次匹配的结构是由方法RegExp.exec()和RegExp.test()找到的,当这两个方法找不到可以匹配的文本时,它们会自动把lastIndex属性重置为0,这个属性是可读可写的。
multiline属性:如果m标志被设置,返回true,否则返回false
source:返回正则表达式的源文本
支持正则表达式的String方法
- javascript正则表达式学习笔记
- javascript正则表达式学习笔记
- JavaScript 正则表达式学习笔记
- Javascript学习笔记-----正则表达式
- javaScript学习笔记正则表达式
- javascript正则表达式 学习笔记
- JavaScript正则表达式学习笔记
- JavaScript中的正则表达式学习笔记
- Javascript RegExp正则表达式学习笔记
- javascript学习笔记2-正则表达式入门
- JavaScript 学习笔记 六 正则表达式《一》
- JavaScript 学习笔记 六 正则表达式《二》
- JavaScript 学习笔记 六 正则表达式《三》
- javascript学习笔记:正则表达式1
- 【前端学习笔记】Javascript中的正则表达式
- Javascript学习笔记——正则表达式
- JavaScript学习笔记---函数和正则表达式
- JavaScript学习笔记之正则表达式
- Eclipse插件项目定制帮助系统
- Handler异步方式详解及其使用
- get和post方式的提交过程图(补充)(jquery的post 、get for的get post 、链接的get、window.open)
- Java的按位运算符
- Mysql下索引优化,索引优化原理基本通用
- JavaScript 正则表达式学习笔记
- 【Flex】——DataGrid的鼠标焦点移动事件。鼠标在DataGrid的列中移动时所触发的event。
- syslog(),openlog(),closelog() 分析转
- 2011腾讯海笔 大概题型(欢迎讨论)
- Java的移位运算符
- 我无语
- SQL中的---最大值(数量或大小)
- {电脑救助站}常用知识2
- Java的逻辑运算符