javascript学习笔记之初识正则表达式(RegExp)

     js正则表达式: 

. 任意字符(换行符除外)

\d 数字0-9    

\D 非D

\w a-z 0-9 _

\W 非w

\s 空格符 换行符

[...] 字符范围

[^...] 字符范围以外

^ 行首

$ 行尾

\b 零宽单词边界   ???  即匹配字与空格之间的边界如\bter.test("terout")  ter\b.test("outer")

\B 非\b

\t\r\n\v\f     tab 回车 换行  垂直制表符 换页符

\转义 如 /\^123/.test("^123")

{x}\1分组  /{abc]\1/.test("abcabc")

{?:x}仅分组   /{?:abc}{def}\1/.test("abcdefdef")

    重复:

x*   abc*匹配 ab abc abcc abccc

x+  abc+ 匹配 abc abcc abccc

x*? 非贪婪算法 abc*?  在abccc中匹配ab

x+? abc+? 在abccc中匹配abc

x{n} 重复n次; x{n} n+次; x{n,m} 重复 x大于等于n小于等于m次

    flag:

/g i m global 全局 ignoreCase 无视大小写 multiline 跨行

RegExp("abc","mgi")

    RegExp 方法:

/abc/.exec("abcdef");//'abc"

/abc/.test("abc");//true

/abc/.toString();//"/abc/"

var reg = /abc/; reg.compile("def");

reg.test("def");//true

    string与正则:

String.prototype.search 检索位置 ''abcabcdef'.search(/{abc}\1/);//0

.replace 替换 "aabbcc".replace(/b+?/,"1");//aa1bcc

.match 匹配并获得 "aabbccbb".match(/b+/g);//["bb","bb"]

.spilt 切割 "aabbcc".split (/b+/);//["aa","cc"]

教程链接https://www.imooc.com/video/8065

学习中,不足之处请见谅。










    

猜你喜欢

转载自blog.csdn.net/qq_24308659/article/details/80926089