正则表达式

1.  (x)

->   'bar foo'.replace( /(..) (...)/, '$2 $1' )

->   "bfoo ar"

2.  (x)

->   "foo bar foo bar".match(/(bar) (foo)/, '$2 $1');

->   ["bar foo", "bar", "foo"]

3.  (x)

->   "foo bar foo bar".match(/(bar) (foo)/, '$&');

->   ["bar foo", "bar", "foo"]

4. x(?!y)  Matches 'x' only if 'x' is not followed by 'y'

-> /d+(?!.)/.exec("3.141")

->["141"]

5.x(?=y)  Matches 'x' only if 'x' is followed by 'y'.

->   /d+(?=.)/.exec("3.141")

->  ["3"]

6.  {n}  

->  /a{2}/.exec("cass")
->  null
->  /a{2}/.exec("caass")
->  ["aa"]
->  /a{2}/.exec("caaaaaass")
->  ["aa"]

6. {n,m}

->  /a{2,4}/.exec("caaaaaass")
->  ["aaaa"]

7. [xyz]    Special characters like the dot(.) and asterisk (*) are not special inside a character set, so they don't need to be escaped

->  /[a-z.]+/.exec("test.i.ngaa11111")
->  ["test.i.ngaa"]

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions

学会勇敢
原文地址:https://www.cnblogs.com/Sir-Lin/p/6529759.html