首页 > 解决方案 > 如何从 JSON 中获取单词

问题描述

我怎么能从 JSON 中获取((“id”=)+ 5 个值)。JSON 看起来像:

{"html":"<div class=\"\" ng-reflect-dragula=\"second-bag\">
<!--bindings={\n  \"ng-reflect-ng-for-of\": \"[object Object],[object Object\"\n}-->
         <div id=\"1\" class=\"\" style=\"background-color: rgb(129, 205, 51)

结果我想得到“id=\1\”

标签: angulartypescript

解决方案


您可以使用 RegEx(正则表达式)。尝试这个:

var myReg = new RegExp(/id="(\w+)"/, 'g');
var myArray = myReg.exec('{"html":"<div class=\"\" ng-reflect-dragula=\"second-bag\"><!--bindings={\n  \"ng-reflect-ng-for-of\": \"[object Object],[object Object\"\n}--><div id=\"123456789123456789\" class=\"\" style=\"background-color: rgb(129, 205, 51)');

这将为您提供一种数组:
myArray[0]将包含整个匹配表达式,即id="value".
myArray[1]将包含值本身。

您可以在此处了解有关正则表达式的更多信息。

编辑

要获得多次点击,请exec多次运行该方法:

var myReg = /id="(\w+)"/g;
var str = 'test test id="123" test test id="456"';
var myArray;
while (myArray = myReg.exec(str)) {
    console.log(myArray[1]);
}

请注意,正则表达式也可以这样定义:/id="(\w+)"/g.


推荐阅读