二十五岁时我们都一样愚蠢、多愁善感,喜欢故弄玄虚,可如果不那样的话,五十岁时也就不会如此明智。
标题:JavaScript正则表达式
正则表达式是构成搜索模式的字符序列.
搜索模式可用于文本搜索和文本替换操作.
正则表达式是什么?
正则表达式是构成搜索模式的字符序列.
当您在文本中搜索数据时,您可以使用此搜索模式来描述您正在搜索的内容.
正则表达式可以是单个字符,也可以是更复杂的模式.
正则表达式可以用来执行所有类型的文本搜索和文本替换操作.
语法
/pattern/modifiers;
var patt = /codingdict/i;实例解析:
/codingdict/i 是一个正则表达式。
codingdict 是一个模式 (用来搜索).
i 是一个修饰符 (修饰搜索为不区分大小写).
使用字符串方法
在JavaScript中,正则表达式有两个常用的字符串方法: search() 和 replace().
search() 方法使用表达式搜索匹配,并返回匹配的位置.
replace() 方法返回替换模式已修改的字符串.
在字符串的search()方法中使用正则表达式
使用正则表达式不区分大小写搜索字符串中的“codingdict”:
var str = "Visit codingdict"; var n = str.search(/codingdict/i);
使用字符串的search()方法
search 方法也将接受字符串作为搜索参数. 符串参数将转换为正则表达式:
在字符串里搜索"编程字典":
var str = "访问编程字典!"; var n = str.search("编程字典");
在字符串的replace()方法中使用正则表达式
使用不区分大小写的正则表达式和字符串 编程字典 取代 codingdict:
var str = document.getElementById("demo").innerHTML; var txt = str.replace(/codingdict.com/i,"编程字典");在replace()方法中使用字符串
replace() 方法也将接受字符串作为搜索参数:
var str = document.getElementById("demo").innerHTML; var txt = str.replace("编程字典","www.codingdict.com");
你注意到了吗?
正则表达式参数(而不是字符串参数)可以用于上面的方法. 正则表达式可以使您的搜索更加强大(例如不区分大小写).
正则表达式修饰符
修饰符可用于执行不区分大小写的全局搜索:
修饰符 描述 i 执行区分大小写匹配 g 执行全局匹配(查找所有匹配,而不是在第一次匹配后停止) m 执行多行匹配 正则表达式模式
括号用于查找一系列字符:
表达式 描述 [abc] 找到括号之间的任何字符 [0-9] 找到括号之间的数字 (x|y) 找到任何与|分隔的选项 元字符是有特殊意义的字符:
元字符 描述 \d 找一个数字 \s 找到一个空白字符 \b 在单词的开头或结尾找到一个匹配 \uxxxx 找到的进制数xxxx指定的Unicode字符 数量词定义数量:
数量词 描述 n+ 匹配至少包含一个字符串 n n* 匹配任何包含零个或多个字符串 n n? 匹配包含零或一个任何字符串 n
使用RegExp对象
在JavaScript中, RegExp 对象是具有预定义属性和方法的正则表达式对象.
Using test()
test() 方法是RegExp 表达式方法.
它搜索一个字符串的模式,根据结果,并返回true或false.
下面的示例搜索字符的字符串 "e":
var patt = /e/; patt.test("The best things in life are free!");
使用 exec()
exec() 方法是一个正则表达式的表示方法.
它搜索指定模式的字符串,并返回所找到的文本.
如果找不到匹配,则返回null。.
下面的示例搜索字符串中的字符 "e":
/e/.exec("The best things in life are free!");
完整的正则表达式参考
完整的正则表达式参考, 请访问 完整的正则表达式参考.
参考包含所有正则表达式的属性和方法的说明和例子.