如何从值pos获取值:
var pos = (59.9477, 59.9477)
var arr = pos.replace(/[^\d|,]/g, "").split(",");
console.log(arr);

答案 0 :(得分:2)
pos
应为字符串。.
被删除。|
(或)无用。
var pos = "(59.9477, 59.9477)";
var arr = pos.replace(/[^\d,.]/g, "").split(",");
console.log(arr);

另一种方法:
您可以使用match
使用此正则表达式/\d*\.?\d+/g
来获取结果。像这样:
var pos = "(59.9477, 59.9477)";
var arr = pos.match(/\d*\.?\d+/g);
console.log(arr);

答案 1 :(得分:1)
如何从值pos获取值:
根据您的代码以及var pos = (59.9477, 59.9477)
的问题,您应该知道console.log(pos) // => 59.9477
和typeof post // => "number"
并且替换方法和正则表达式仅适用于字符串类型。所以我猜你的变量可能是var pos = "(59.9477, 59.9477)"
,这是String。
var arr = pos.replace(/[^\d|,]/g, "").split(",");
你的正则表达式/[^\d|,]/g
,这意味着匹配除数字和逗号之外的所有内容,但我认为你想保持小数点正确吗?其他的你会回来["599477", "599477"]
。我想你想要[" 59.9477"," 59.9477"],如果是这样,你的代码应该是var arr = pos.replace(/[^\d.,]/g, "").split(",");
注意:使用NOT |
时,or
不需要[^]
答案 2 :(得分:0)
只需使用引号,而不是():
var pos = "59.9477, 59.9477";
var arr = pos.replace(/[^\d|,]/g, "").split(",");
console.log(arr);