如何捕獲所有 1、2 和 3not |1|2|3|
我的正則運算式\|(.*?)\|
跳過 2。
const re = /\|(.*?)\|/gi;
const text = 'not |1|2|3|'
console.log(text.match(re).map(m => m[1]));
uj5u.com熱心網友回復:
您可以使用
const re = /\|([^|]*)(?=\|)/g;
const text = 'not |123|2456|37890|'
console.log(Array.from(text.matchAll(re), m => m[1]));
詳情:
\|
- 一個|
字符([^|]*)
- 第 1 組:零個或多個字符|
(?=\|)
- 與緊隨其后的位置匹配的正向前瞻|
。
如果您不關心匹配|
右側的,您可以洗掉前瞻。
|
如果在缺少尾隨時還需要匹配到字串的末尾,則可以使用/\|([^|]*)(?=\||$)/g
.
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/508304.html
上一篇:替換字串模式但保留其中的一部分