如何捕獲所有 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
上一篇:替換字串模式但保留其中的一部分
