javascript - 如何使用正则表达式将数据转换为另一种形式?

标签 javascript php jquery regex

我有一个巨大的列表,其中包含以下格式的所有国家和城市。

city_states['Finland'] = '|Helsinki||Aland|Etela-Suomen Laani|Ita-Suomen Laani|Lansi-Suomen Laani|Lappi|Oulun Laani';

我的问题是如何将其转换为以便我可以在自动完成脚本中运行它? 我使用 notepad++,所以它可以让我执行正则表达式。

{ value: 'Finland, Helsinki', data: '' },
{ value: 'Finland, Aland', data: '' },
...
...
...

非常感谢。

最佳答案

迭代city_states变量,然后将对象插入result数组。

var city_states = {};
city_states['Finland'] = '|Helsinki||Aland|Etela-Suomen Laani|Ita-Suomen Laani|Lansi-Suomen Laani|Lappi|Oulun Laani';

var result = [];
for (var k in city_states) {
  var c = city_states[k].replace(/^\|/, "").split(/[\|]+/)
  for (var i in c) {
    result.push({
      value: k + ", " + c[i],
      data: ""
    });
  }
}

alert(JSON.stringify(result, null, 2));

关于javascript - 如何使用正则表达式将数据转换为另一种形式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27156449/

相关文章:

Javascript - 如何避免冗长/丑陋的 if/else 语句?

javascript - 资源解释为字体但在 Opencart 中使用 MIME 类型文本/html 传输

jquery - 调用checkbox的点击事件好像有错误?

PHP通过电子邮件进行用户身份验证

jquery - Bootstrap Collapse Tree View with Tree Levels(使用 CSS)

javascript - 用 a4 尺寸缩放 div 和表格

javascript - 如何使后退按钮链接到用户访问过的上一页?

javascript - 从 onClick 事件中选择 JavaScript 对象

php - 在 JavaScript (jQuery) 中隐藏 ajax 路径

php - mysql 更新或插入多条记录(如果表中尚不存在)