巢狀括號時RegExp 1的指向問題

2021-10-21 01:51:59 字數 597 閱讀 6872

找tofixed()四捨五入不正確的解決方法時看見有大神重寫了,其中有正則匹配如下:

if(new regexp("^(-|\\+)?(\\d+(\\.\\d)?)\\d*$").test(s))
有點好奇是什麼意思就研究了一番:

regexp.$1代表第乙個匹配項(-|\\+),即正負號。

regexp.$2代表第二個匹配項(\\d+(\\.\\d)?),注意其中還包含了乙個括號,n表示要保留的小數字個數。

regexp.$3就是第二個匹配項中的括號所匹配到的,即(\\.\\d)

例子:

if(new regexp("^(-|\\+)?(\\d+(\\.\\d)?)\\d*$").test("0.23456")) 

//輸出"" "0.23" ".23"

上面的例子中和第一段**不一樣的地方是換成了,目前還沒搞懂"+(n+1)+"是什麼意思,實踐了一下不行。

1111 有效括號的巢狀深度

有效括號字串 僅由 和 構成,並符合下述幾個條件之一 空字串 連線,可以記作 ab a 與 b 連線 其中 a 和 b 都是有效括號字串 巢狀,可以記作 a 其中 a 是有效括號字串 類似地,我們可以定義任意有效括號字串 s 的 巢狀深度 depth s s 為空時,depth 0 s 為 a 與 ...

Leetcode 有效括號的巢狀深度

有效括號字串 定義 對於每個左括號,都能找到與之對應的右括號,反之亦然。詳情參見題末 有效括號字串 部分。巢狀深度 depth 定義 即有效括號字串巢狀的層數,depth a 表示有效括號字串 a 的巢狀深度。詳情參見題末 巢狀深度 部分。給你乙個 有效括號字串 seq,請你將其分成兩個不相交的有效...

1111 有效括號的巢狀深度

有效括號字串 僅由 和 構成,並符合下述幾個條件之一 空字串 連線,可以記作 ab a 與 b 連線 其中 a 和 b 都是有效括號字串 巢狀,可以記作 a 其中 a 是有效括號字串 類似地,我們可以定義任意有效括號字串 s 的 巢狀深度 depth s s 為空時,depth 0 s 為 a 與 ...