是否有可能在一些字符串后找到空格

时间:2015-03-29 10:03:03

标签: javascript regex

我想得到的是找到一些字符串之后的所有空格,例如。 " ABC"像这样:

Abcabcabc ab abc babcba.
         ^      ^

只有我能做的就是找到字符串" abc"用正则表达式

/abc\s/g

但我希望在" abc"。

之后只留一个空格

甚至可能吗?这对我来说很重要,因为我可以使用这个i JS

text.replace(REGEX, "something");

2 个答案:

答案 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