如何使用带有正则表达式的regex使用命名(!)捕获组?

问题描述 投票:0回答:1
<img(?=[^>]*alt="([^"]*))(?=[^>]*src="([^"]*)).*\/>

上面的正则表达式使我可以从alt标记中获取srcimg属性。但是由于这些(和其他属性)可以按任何顺序排列,因此我想将它们按如下方式分成命名组:

<img(?=[^>]*alt="(?<alt>[^"]*))(?=[^>]*src="(?<scr>[^"]*)).*\/>

gulp-replace对于两个正则表达式都没有问题。在第一种情况下,我将使用$ 1和$ 2进行替换。但是,再次,由于属性可以是不同的顺序,因此我需要使用命名的组和类似$alt的名称,但此方法无效。 /\k<name>/上建议的?P<name>https://www.smashingmagazine.com/2019/02/regexp-features-regular-expressions/#named-capture-groups也没有。 JS / ECMA正则表达式适用于这种情况。请帮助。

regex gulp gulp-replace
1个回答
0
投票
© www.soinside.com 2019 - 2024. All rights reserved.