我想得到的是找到一些字符串之后的所有空格,例如。 " ABC"像这样:
Abcabcabc ab abc babcba.
^ ^
只有我能做的就是找到字符串" abc"用正则表达式
/abc\s/g
但我希望在" abc"。
之后只留一个空格甚至可能吗?这对我来说很重要,因为我可以使用这个i JS
text.replace(REGEX, "something");
答案 0 :(得分:1)
这是不可能的,因为javascript的正则表达式引擎不支持外观。但是你可以捕获abc
并在替换字符串中使用它。
text.replace(/(abc)\s/g, "$1something");
基本上你实现了同样的目标。 $1
是指通过paranthesis捕获的第一个组您也可以硬编码替换字符串
text.replace(/abc\s/g, "abcsomething");
答案 1 :(得分:0)
JavaScript不支持正则表达式中的lookbehinds。但是,它支持前瞻。所以你可以反转你的字符串并使用前瞻:
text.split('').reverse().join('') // Invert string
.replace(/\s(?=cba)/g, 'gnihtemos') // Use lookahead
.split('').reverse().join(''); // Invert again