JavaScript RegExp 对象
来源:互联网 发布:女大童服装淘宝网 编辑:程序博客网 时间:2024/06/05 00:52
RegExp 对象用于规定在文本中检索的内容。
什么是 RegExp?
RegExp 是正则表达式的缩写。
RegExp 对象的方法
RegExp 对象有 3 个方法:test()、exec() 以及 compile()。
test()
方法检索字符串中的指定值。返回值是 true 或 false。
exec()
方法检索字符串中的指定值。返回值是被找到的值。如果没有发现匹配,则返回 null。
compile()
既可以改变检索模式,也可以添加或删除第二个参数。
var patt1=new RegExp("e");document.write(patt1.test("The best things in life are free"));//输出true
patt1.compile("d");document.write(patt1.test("The best things in life are free"));//输出false
修饰符
修饰符 描述
i 执行对大小写不敏感的匹配。
g 执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。
m 执行多行匹配。
元字符(Metacharacter)是拥有特殊含义的字符:
. 查找单个字符,除了换行和行结束符。\w查找单词字符。\W查找非单词字符。\d查找数字。\D查找非数字字符。\s查找空白字符。\S查找非空白字符。\b匹配单词边界。\B匹配非单词边界。\0查找 NUL 字符。\n查找换行符。\f查找换页符。\r查找回车符。\t查找制表符。\v查找垂直制表符。\xxx查找以八进制数 xxx 规定的字符。\xdd查找以十六进制数 dd 规定的字符。\uxxxx查找以十六进制数 xxxx 规定的 Unicode 字符。
n+ 匹配任何包含至少一个 n 的字符串。n* 匹配任何包含零个或多个 n 的字符串。n? 匹配任何包含零个或一个 n 的字符串。n{X} 匹配包含 X 个 n 的序列的字符串。n{X,Y} 匹配包含 X 至 Y 个 n 的序列的字符串。n{X,} 匹配包含至少 X 个 n 的序列的字符串。n$ 匹配任何结尾为 n 的字符串。^n 匹配任何开头为 n 的字符串。?=n 匹配任何其后紧接指定字符串 n 的字符串。?!n 匹配任何其后没有紧接指定字符串 n 的字符串。search() 方法用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串。 如果没有找到任何匹配的子串,则返回 -1。
var str="Visit W3School!"document.write(str.search(/W3School/))输出:
6
match() 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。
var str="1 plus 2 equal 3"document.write(str.match(/\d+/g))输出:
1,2,3
replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。
var str="Visit Microsoft!"document.write(str.replace(/Microsoft/, "W3School"))输出:
Visit W3School!
var str="Welcome to Microsoft! "str=str + "We are proud to announce that Microsoft has "str=str + "one of the largest Web Developers sites in the world."document.write(str.replace(/Microsoft/g, "W3School"))输出:
Welcome to W3School! We are proud to announce that W3School
has one of the largest Web Developers sites in the world.
在本例中,我们将把字符串中所有单词的首字母都转换为大写:
name = ‘aaa bbb ccc’;
uw=name.replace(/\b\w+\b/g, function(word){
return word.substring(0,1).toUpperCase()+word.substring(1);}
);
下面附上一些使用的提示
字符集
ISO-8859-1,包含英文字符和计算常用的字符,一共有127个字符
GB2312,包含ISO-8859-1的所有字符和一些常用的中文字符,不包含生僻字
GBK,GB2312的扩展,包含了更多的汉字和生僻字
BIG5,繁体汉字
UNICODE,目标实现能够显示地球上所有文字,包含UTF-8,UTF-16….
[] 中括号可以写需要查找的数据范围
[0-9] 查找是否包含有0到9的数字
[a-zA-Z] 查找是否包含大写和小写的英文字母
[\u4E00-\u9FA5\uF900-\uFA2D] 查找是否包含中日韩文字
[aeiou] 查找是否包含有aeiou这5个字符
转义
\d 表示0~9的数字
\w 表示字符a-zA-Z
\s 空格、换行等空白符号(打印看不到内容的那些符号)
[] 中括号可以写需要查找的数据范围
[0-9] 查找是否包含有0到9的数字
[a-zA-Z] 查找是否包含大写和小写的英文字母
[\u4E00-\u9FA5\uF900-\uFA2D] 查找是否包含中日韩文字
[aeiou] 查找是否包含有aeiou这5个字符
转义
\d 表示0~9的数字
\w 表示字符,包含a-zA-Z还有数字
\s 空格、换行等空白符号(打印看不到内容的那些符号)
\D 不是数字的其它字符
\W 除a-zA-Z以外的字符
\S 除空格之类的符号
\D 不是数字的其它字符
\W 除a-zA-Z以外的字符
\S 除空格之类的符号
/[hH]/ 查找大小写的h,不方便
/h/i i表示是怱略大小写,i是ignore的缩写
/h/g g表示是字符串里的所有字符h,g是global的缩写
^ 元字符(shift+6),它有两个作用:1. [^a-zA-Z]:不是a-zA-Z这些字符以外的其他字符,2.写在正则的最前面表示必须以^字符后的内容做为开始的条件
$ 写在正则表达式的最后,表示以什么内容结束
| 或的意思,(a|b){3,4} a或b会出现3~4次
. 表示任意一个字符
\ 是转义符号,把有特殊意义的字符转换为文本字符,例如.
/ 表示是一个正则表达式,可以表示表达式的开始或结束
限定出现次数
[a]{n, m} 限定字符a出现的次数
[a]{3,} a需要连续出现3次或以上才会被搜索到
[a]{3,6} a需要连续出现3或最多6次才会被搜索到
[a]{3} a必须是连续出现3才会被搜索到
[a]? 表示a会出现0或1次
a+ 表示a会出现1或多次
a* 表工会出现0或多次
和正则表达式配合使用的函数
search 查找出现位置,-1表示查找不到,string.seach(正则)
match 获取查找到的数据,string.match(正则)
replace 替换查找到的内容,string.replace(正则, 新的内容)
test 使用正则检查字符串内容是否匹配,/abc/.test(字符串),如果匹配返回true否则返回false
var reg = /^[a-zA-Z0-9]\w*@\w+\.\w{2,3}(\.\w{2})?$/;邮箱验证正则
// 包含中文的邮箱 var reg = /^[a-zA-Z0-9\u4E00-\u9FA5\uF900-\uFA2D][\w\u4E00-\u9FA5\uF900-\uFA2D]*@\w+\.\w{2,3}(\.\w{2})?$/;
//手机验证var userRegt=/^1[3458]\d{9}$/;
// 这是密码验证 var passReg = /^\w{6,12}$/;
qq验证var oQQReg=/[1-9]\d{4,9}/;
- JavaScript RegExp 对象参考
- JavaScript RegExp 对象
- JavaScript RegExp 对象
- JavaScript的RegExp对象
- JavaScript RegExp 对象参考手册
- JavaScript的RegExp对象
- javaScript RegExp对象问题
- javascript RegExp 对象介绍
- JavaScript的RegExp对象
- JavaScript RegExp 对象
- JavaScript中的Regexp对象
- JavaScript RegExp 对象
- JavaScript RegExp 对象
- JavaScript RegExp对象
- JavaScript RegExp 对象
- JavaScript RegExp 对象
- JavaScript RegExp 对象
- 19. JavaScript RegExp 对象
- sql语句学习记录(一)
- 今天天气不错
- Elasticsearch5.3 JAVA代码添加数据 Demo
- 6月30
- Linus Torvalds
- JavaScript RegExp 对象
- 如何理解标签语义化,它有哪些好处
- QT实现2048
- Spring的反射机制和依赖注入
- 7月1日
- 7.3 练习赛zi
- 7月2
- 基于Redis的在线用户列表解决方案 (12)
- 基础知识记录:OOM异常出现的情况与处理方式