- JavaScript:Moving to ES2015
- Ved Antani Simon Timms Narayan Prusty
- 254字
- 2021-07-09 19:07:34
Backreferences
After an expression is evaluated, each group is stored for later use. These values are known as backreferences. Backreferences are created and numbered by the order in which opening parenthesis characters are encountered going from left to right. You can think of backreferences as the portions of a string that are successfully matched against terms in the regular expression.
The notation for a backreference is a backslash followed by the number of the capture to be referenced, beginning with 1, such as \1
, \2
, and so on.
An example could be /^([XYZ])a\1/
, which matches a string that starts with any of the X
, Y
, or Z
characters followed by an a
and followed by whatever character matched the first capture. This is very different from /[XYZ] a[XYZ]/
. The character following a
can't be any of X
, or Y
, or Z
, but must be whichever one of those that triggered the match for the first character. Backreferences are used with String's replace()
method using the special character sequences, $1
, $2
, and so on. Suppose that you want to change the 1234 5678
string to 5678 1234
. The following code accomplishes this:
var orig = "1234 5678"; var re = /(\d{4}) (\d{4})/; var modifiedStr = orig.replace(re, "$2 $1"); console.log(modifiedStr); //outputs "5678 1234"
In this example, the regular expression has two groups each with four digits. In the second argument of the replace()
method, $2
is equal to 5678
and $1
is equal to 1234
, corresponding to the order in which they appear in the expression.
- 解構產品經理:互聯網產品策劃入門寶典
- AWS Serverless架構:使用AWS從傳統部署方式向Serverless架構遷移
- Python Deep Learning
- Securing WebLogic Server 12c
- Mathematica Data Analysis
- SQL Server 2016數據庫應用與開發
- UML 基礎與 Rose 建模案例(第3版)
- 軟件品質之完美管理:實戰經典
- Learning Concurrency in Kotlin
- Python全棧開發:基礎入門
- 你真的會寫代碼嗎
- Python機器學習開發實戰
- 計算機程序的構造和解釋(JavaScript版)
- Distributed Computing with Python
- Python服務端測試開發實戰