JS `RegExp Match Indices` (`d` 标志,ES2022):获取匹配组的开始/结束索引

好的,各位观众老爷,今天咱们来聊聊 JavaScript 里一个挺酷炫的新玩意儿:RegExp Match Indices,也就是 ES2022 中那个带着 d 标志的正则表达式。 别看名字长,其实它的作用简单粗暴,就是能让你精确地知道你的正则表达式匹配到了字符串的哪个位置,甚至能告诉你每个捕获组都在哪儿! 开场白:Regex 的爱恨情仇 话说程序员对正则表达式的感情,那是相当复杂的。一方面,我们爱它的强大,能用短短几行代码搞定各种复杂的文本处理任务。另一方面,我们又恨它的晦涩,一不小心就写出个让人抓狂的 bug,而且还很难调试。 以前我们用正则表达式,主要关心的是“匹配到了没?”和“匹配到了啥?”。至于匹配的具体位置,那得费一番功夫才能搞到。有了 RegExp Match Indices,情况就不一样了,它就像给你的正则表达式加了个 GPS,能告诉你匹配的每一个细节。 d 标志:开启寻宝之旅 要使用 RegExp Match Indices,首先得给你的正则表达式加上 d 标志。这个 d 代表什么呢?官方说法是 "indices",索引的意思。你可以理解为 &qu …