2013-01-06 59 views

回答

4

使用此:

var result:String = string.replace(/([^a]) | ([^b])/g, "$1_$2"); 

的上述簡化的解釋是,它取代,要麼一個空間:

  1. 由除了a
  2. 以外的字符前面之後是除b以外的字符

否te:推廣正則表達式以包含製表符和換行符,使用\s,如下所示:

var result:String = string.replace(/([^a])\s|\s([^b])/g, "$1_$2"); 
2

試試這個正則表達式:

/(?!a)\s(?!b)/g 

編輯:這是不是最好的解決方案KendallFrey指出。

+0

工程就像一個魅力。 –

+0

這是錯誤的。這隻會替換沒有被「b」跟隨的空格。 '(?!a)'什麼都不做。 –

+0

@肯德爾弗裏:是的,你說得對... – elclanrs

相關問題