首页 > 代码库 > 正则表达式学习-JavaScript RegExp 对象
正则表达式学习-JavaScript RegExp 对象
W3School 中有关于正则表达式的全面介绍:http://www.w3school.com.cn/jsref/jsref_obj_regexp.asp
1、什么是正则表达式?正则表达式有什么用?
知道正则表达式有什么用,是学习它的最好动力。 正则表达式跟平时用的字符串操作功能函数类似。功能比它强大很多。
正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。给定一个正则表达式和另一个字符串,我们可以达到如下的目的:
(1) 给定的字符串是否符合正则表达式的过滤逻辑(称作“匹配”);
(2) 可以通过正则表达式,从字符串中获取我们想要的特定部分。
2、JavaScript 如何定义正则表达式,如何使用?
RegExp对象表示正则表达式,它是对字符串执行模式匹配的强大工具。
javaScript中两种方式使用正则表达式:
(1)使用直接量
/pattern/attributes
参数 pattern :是一个匹配对象字符串或匹配模式正则表达式。
参数 attributes 是一个可选的字符串,包含属性 "g"、"i" 和 "m",分别用于指定全局匹配、区分大小写的匹配和多行匹配。
<script type="text/javascript"> var str="Is this all there is?"; var patt1=/[a-h]/g; document.write(str.match(patt1)); </script>
(2)创建 RegExp 对象的语法:
new RegExp(pattern, attributes);
参数同上。
(3) 使用方式
1) RegExp 对象的3种方法。使用 new 创建 RegExp 的对象 ,然后使用对象方法:
compile 编译正则表达式。
exec 检索字符串中指定的值。
test 检索字符串中指定的值。
2) 使用String对象的4种方法。(String方法支持 正则表达式)
search 检索与正则表达式相匹配的值。
match 找到一个或多个正则表达式的匹配。
replace 替换与正则表达式匹配的子串。
split 把字符串分割为字符串数组。