2013-03-23 39 views
1

有一種簡單的方法,使這個字符串:簡單的正則表達式替換括號

(53.5595313, 10.009969899999987) 

這個字符串

[53.5595313, 10.009969899999987] 

JavaScript或jQuery的?

+0

有。不過,我不會將自己限制在一個正則表達式中。一個用於左支架,另一個用於右支架。 – 2013-03-23 10:17:32

回答

17

好吧,既然你問了正則表達式:

var input = "(53.5595313, 10.009969899999987)"; 
var output = input.replace(/^\((.+)\)$/,"[$1]"); 

// OR to replace all parens, not just one at start and end: 
var output = input.replace(/\(/g,"[").replace(/\)/g,"]"); 

...那是一種複雜的。你可以只使用.slice()

var output = "[" + input.slice(1,-1) + "]"; 
+0

非常感謝.slice()解決方案對我來說是最優的 – 2013-03-23 10:56:28

3
var s ="(53.5595313, 10.009969899999987)"; 
s.replace(/\((.*)\)/, "[$1]") 
3

這個Javascript應該做的工作,以及通過 'NNNNNN' 答案上述

stringObject = stringObject.replace('(', '[').replace(')', ']')

+2

+1。但是請注意,'replace'只在傳遞字符串時進行一次替換。 – 2013-03-23 10:21:45

+0

我認爲提議的問題他只有一次出現,'nnnnnn'的第二個回答也將在括號只出現一次時適用於這個概念。 – 2013-03-23 10:24:57

0

對於它的價值,以取代雙方{和}使用:

str = "{boob}"; 
str = str.replace(/[\{\}]/g, ""); // yields "boob"