作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
所以使用 jquery,我得到了一串这样的坐标:
38.313072,-89.863845,38.312675,-89.863586,38.310405,-89.862091,38.310405,-89.862091,38.309913,-89.861976,38.309768,-89.861976,38.309768,-89.861976
我需要它们看起来像这样:
[38.313072, -89.863845] [38.312675, -89.863586] [38.310405, -89.862091] [38.310405,-89.862091] [38.309913, -89.861976] [38.309768, -89.861976] [38.309768, -89.861976] [38.30965, -89.861991]
所以我需要弄清楚如何用空格和括号坐标集替换所有其他逗号。
想法?
最佳答案
您可以使用正则表达式。
([-\d.]+),([-\d.]+),?
Regex Explanation and Live Demo
[-\d.]
:字符类,-
将匹配文字 -
连字符,\d
将匹配单个数字,.
将匹配 .
字面意思。在类中提到时,顺序无关紧要。+
:匹配前面匹配项的一次或多次出现(...)
:捕获组。大括号内的匹配被捕获并在 $1
, $2
, ...,?
:不匹配每隔一个逗号g
:全局匹配。匹配所有可能出现的情况。var str = '38.313072,-89.863845,38.312675,-89.863586,38.310405,-89.862091,38.310405,-89.862091,38.309913,-89.861976,38.309768,-89.861976,38.309768,-89.861976';
var result = str.replace(/([-\d.]+),([-\d.]+),?/g, '[$1, $2] ').trim();
document.getElementById('output').innerHTML = JSON.stringify(result, 0, 2);
<pre id="output"></pre>
关于javascript - 删除所有其他逗号并用方括号括起来,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33190900/
我是一名优秀的程序员,十分优秀!