除了不起作用的单词之外,Jquery删除字符串中的所有空格

时间:2015-09-02 11:10:17

标签: javascript jquery regex

我想从字符串中删除所有空格,除了单词之间,我尝试以下内容,但它不起作用。

输入字符串

=  IF  ( @F_28º@FC_89º =  " @Very strongº "  , 100 ,  IF  ( @F_28º@FC_89º =  " @Above Averageº "  , 75 ,  IF  ( @F_28º@FC_89º =  " @Averageº "  , 50 ,  IF  ( @F_28º@FC_89º =  " @Below Averageº "  , 25 ,  IF  ( @F_28º@FC_89º =  " @Cannot determineº "  , 0 ,  IF  ( @F_28º@FC_89º =  " @Poorº "  , 0 , 0 )  )  )  )  )  )

我想删除除

之类的单词之外的所有空格
  • 非常强大
  • 高于平均水平 等

我从this question尝试了这个正则表达式:

str.replace(/\s/g, '')

但它也无效。

2 个答案:

答案 0 :(得分:1)

像这样\s+(?![a-zA-Z])

应用于您发布的字符串,结果为:

= IF(@F_28º@FC_89º="@Very strongº",100, IF(@F_28º@FC_89º="@Above Averageº",75, IF(@F_28º@FC_89º="@Averageº",50, IF(@F_28º@FC_89º="@Below Averageº",25, IF(@F_28º@FC_89º="@Cannot determineº",0, IF(@F_28º@FC_89º="@Poorº",0,0))))))

Fiddle

这一个\s+(?![a-zA-Z])|\s+(?=IF)也会删除IF字词之前的空格:

=IF(@F_28º@FC_89º="@Very strongº",100,IF(@F_28º@FC_89º="@Above Averageº",75,IF(@F_28º@FC_89º="@Averageº",50,IF(@F_28º@FC_89º="@Below Averageº",25,IF(@F_28º@FC_89º="@Cannot determineº",0,IF(@F_28º@FC_89º="@Poorº",0,0))))))

Fiddle

答案 1 :(得分:0)

如果我理解正确,你想修剪字符串中的前导和尾随空格?

generate