我想刪除一些詞之間的空格,彼此相鄰,我怎麼能實現這一點?JavaScript的正則表達式,以消除匹配的單詞之間的混亂
Cosider如下:
str = "Z =A= =B= =C= =D= Z";
str = str.replace(/(=\w+=)\s+(=\w+=)/g, "$1$2");
我希望"Z =A==B==C==D= Z"
(所有比賽連在一起),而是我得到"Z =A==B= =C==D= Z"
作爲=A=
視爲匹配和=C=
+ =D=
也(空間之間=B=
=C=
)+ =B=
,但是=B=
+ =C=
因爲=B=
已經與=A=
匹配。
我應該如何修改我的正則表達式來實現它?
更新
我使用實際的比賽是「默字」,例如=?ISO-8859-1?B?dGVzdA==?=
和我使用mathcing這些正則表達式是/=\?[^?]+\?[QqBb]\?[^?]+\?=/
我想要去除這些啞劇之間的空間詞語occurances在一個字符串,例如
str= "hello =?ISO-8859-1?B?dGVzdA==?= =?ISO-8859-1?B?aG93?= =?ISO-8859-1?B?YXJlIHlvdQ==?=?"
應成爲
"hello =?ISO-8859-1?B?dGVzdA==?==?ISO-8859-1?B?aG93?==?ISO-8859-1?B?YXJlIHlvdQ==?=?"
爲什麼不能簡單地'str.replace(/ = = /克, '')'? – 2012-01-03 14:18:55
我有一個複雜的正則表達式來匹配這些單詞,= A =只是一個簡單的例子,我需要匹配完整的單詞,而不僅僅是beginnig或end – Andris 2012-01-03 14:20:09
原因是,即使將正則表達式設置爲全局,將不匹配重疊匹配。你能否更詳細地描述你的需求? – 2012-01-03 14:23:16