Home > Web Front-end > JS Tutorial > javascript-regular expression

javascript-regular expression

巴扎黑
Release: 2017-07-20 14:08:55
Original
1034 people have browsed it
From:
Test regular website:
Modifier:
  1. g: global full-text search, no addition, search stops at the first match.

  2. i: ignore case ignores case, default is case sensitive.

  3. m: multiple lines multi-line search.

  4. lastIndex: The next position of the last character of the content matched by the current expression

  5. source: The text string of the regular expression

Regular expressions consist of two basic character types:
  1. Literal text characters (for example: abc)

  2. Metacharacters (for example: \b). Metacharacters are non-alphabetic characters with special meanings in regular expressions (.*+?^.|\(){}[])

Metacharacters :
  1. ##\t: Horizontal tab character

  2. \v: Vertical tab character

  3. \n: Line break character

  4. \r: Carriage return character

  5. ##\0: Empty character
  6. \f: form feed character
##Character class:
[abc]: Build a simple Class (for example: 'a1b2c3d4'.replace(/[abc]/g,'X') =》X1X2X3d4)
  1. ##[^abc]: Negation

  2. Range class:
[a-z]: Any character from a to z, including a and z. (For example: 'a1b2c3d4aa'.replace(/[a-z]/g,'X') =》X1X2X3X4XX)
  1. [a-zA-Z]: Class composed of [] It can be written continuously inside.

  2. [a,z]: Split ('12345678'.replace(/[1,3]/g,'A') =》A2A45678)

  3. Predefined class:
.: All characters except carriage returns and line feeds ([^\r\n])
  1. \d: Numeric characters ([0-9])

  2. \D: Non-numeric characters ([^0-9])

  3. \s: whitespace character ([\t\n\x0B\f\r])

  4. \S: non-whitespace character ( [^\t\n\x0B\f\r] )

  5. \w: word characters, including characters, numbers, and underscores ([a-zA-Z_0-9])

  6. \W: Non-word characters ([^a-zA-Z_0-9])

  7. Boundary matching characters :
^: Start with xxx ('@123@abc@a'.replace(/^@./g,'X') =》X23@abc@a)
  1. $: ends with xxx ('@123@abc@a'.replace(/@.$/g,'X') =》@123@abcX)

  2. \b: Word boundary

  3. \B: Non-word boundary

  4. Quantifier :
##?: Appears 0 or 1 times
  1. +: Appears 1 or more times

  2. *: Occurs 0 or more times

  3. {n}: Occurs n times

  4. {n,m}: Occurs n To m times

  5. {n,}: At least n times

  6. Greedy mode: Regular expression will exhaust Match as many times as possible until a match fails. ('12345678'.replace(/\d{3,6}/g,'A') =》A78)
Non-greedy mode: match as few as possible. Just add ? after the quantifier. ('12345678'.replace(/\d{3,6}?/g,'A') =》AA78)
Group:
Use () to achieve the grouping function, so that the quantifier acts on the grouping ('a1b2c3d4'.replace(/(\w\d){3}/g,'X') =》Xd4)
  1. Or|('a1b2c3d4'.replace(/(a1|b2)/g,'X') =》XXc3d4)

  2. Backreference ('2017-05-06'.replace(/(\d{4})-(\d{2})-(\d{2})/g,'$2/$3/$1') =》05/06/2017)
Ignore grouping: If you don’t want to capture certain groups, you just need to add ?: in the grouping
Look-ahead: When the regular expression matches a rule, check forward to see if it conforms to the assertion, and look-ahead in the opposite direction. JS does not support look-ahead.
Positive lookahead: exp(?=assert)('a2*3'.replace(/\w(?=\d)/g,'X') =》X2 *3)
  1. Negative lookahead: exp(?!assert)

  2. Positive lookback: exp(?<=assert), JS is not supported.

  3. Negative lookback: erp((?

  4. test( str): used to test whether there is a string matching the regular expression pattern in the string parameter (var reg1 = /\w/; reg1.test('a');//true)
exec(str): Performs a search on a string using a regular expression pattern and will update the properties of the global RegExp object to reflect the matching results.
Returns null if there is no matching text, otherwise returns an array of results: index declares the position of the first character of the matching text, and input stores the retrieved string string

The above is the detailed content of javascript-regular expression. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template