Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用正则表达式向所有json对象添加属性_Json_Regex_Visual Studio Code_Text Editor - Fatal编程技术网

使用正则表达式向所有json对象添加属性

使用正则表达式向所有json对象添加属性,json,regex,visual-studio-code,text-editor,Json,Regex,Visual Studio Code,Text Editor,我有一个json数组: { "Tabelle1": [ { "Nr.": "1", "Firma": "Alba Reisen/Versicherungen/Darlehen H. Kajtazi", "Rechtsform": "EIU",

我有一个json数组:

{
    "Tabelle1": [
        {
            "Nr.": "1",
            "Firma": "Alba Reisen/Versicherungen/Darlehen H. Kajtazi",
            "Rechtsform": "EIU",
            "Sitz": "Rapperswil-Jona",
            "Kanton": "SG",
            "UID": "CHE‑101.868.757"
        },
        {
            "Nr.": "2",
            "Firma": "Alybaba - Schischa Laden, Aly",
            "Rechtsform": "EIU",
            "Sitz": "Wil (SG)",
            "Kanton": "SG",
            "UID": "CHE‑102.012.121"
        },
        {
            "Nr.": "3",
            "Firma": "Bluamawerkstatt zur Linde Marianne Bislin-Lieberherr",
            "Rechtsform": "EIU",
            "Sitz": "Pfäfers",
            "Kanton": "SG",
            "UID": "CHE‑217.602.289"
        },
    ]
}
我想为每个对象添加一个属性和一个值,如下所示:

"X": ""
    {
        "Nr.": "2",
        "Firma": "Alybaba - Schischa Laden, Aly",
        "Rechtsform": "EIU",
        "Sitz": "Wil (SG)",
        "Kanton": "SG",
        "UID": "CHE‑102.012.121",
        "X":""
    },
最终,对象将如下所示:

"X": ""
    {
        "Nr.": "2",
        "Firma": "Alybaba - Schischa Laden, Aly",
        "Rechtsform": "EIU",
        "Sitz": "Wil (SG)",
        "Kanton": "SG",
        "UID": "CHE‑102.012.121",
        "X":""
    },
我设法用这个正则表达式过滤json的最后一个属性,但我认为我离解决方案还很远:

"UID\s*([^\n\r]*)

我正在使用支持正则表达式过滤的VSCode的搜索和替换功能。

我认为在这里使用正则表达式会使事情变得复杂。您可以使用任何编程语言
X
元素与
轻松地附加到选项卡1中的每个对象。我在这里使用Javascript进行演示。如果你仍然需要正则表达式,那么你可以试试

const json={
“表1”:[{
“编号:”“1”,
“Firma”:“Alba Reisen/Versioncherungen/Darlehen H.Kajtazi”,
“Rechtsform”:“EIU”,
“Sitz”:“Rapperswil Jona”,
“Kanton”:“SG”,
“UID”:“CHE-101.868.757”
},
{
“编号:”“2”,
“Firma”:“Alybaba-Schisha Laden,Aly”,
“Rechtsform”:“EIU”,
“Sitz”:“Wil(SG)”,
“Kanton”:“SG”,
“UID”:“CHE-102.012.121”
},
{
“编号:”“3”,
“Firma”:“Bluamawerkstatt zur Linde Marianne Bislin Lieberherr”,
“Rechtsform”:“EIU”,
“Sitz”:“Pfäfers”,
“Kanton”:“SG”,
“UID”:“CHE-217.602.289”
},
]
}
json['Tabelle1'].forEach(e=>e['X']=”);

log(json)我认为在这里使用正则表达式会使事情变得复杂。您可以使用任何编程语言
X
元素与
轻松地附加到选项卡1中的每个对象。我在这里使用Javascript进行演示。如果你仍然需要正则表达式,那么你可以试试

const json={
“表1”:[{
“编号:”“1”,
“Firma”:“Alba Reisen/Versioncherungen/Darlehen H.Kajtazi”,
“Rechtsform”:“EIU”,
“Sitz”:“Rapperswil Jona”,
“Kanton”:“SG”,
“UID”:“CHE-101.868.757”
},
{
“编号:”“2”,
“Firma”:“Alybaba-Schisha Laden,Aly”,
“Rechtsform”:“EIU”,
“Sitz”:“Wil(SG)”,
“Kanton”:“SG”,
“UID”:“CHE-102.012.121”
},
{
“编号:”“3”,
“Firma”:“Bluamawerkstatt zur Linde Marianne Bislin Lieberherr”,
“Rechtsform”:“EIU”,
“Sitz”:“Pfäfers”,
“Kanton”:“SG”,
“UID”:“CHE-217.602.289”
},
]
}
json['Tabelle1'].forEach(e=>e['X']=”);

log(json)如果使用正则表达式,则应使用捕获组

^(\s+)("UID".*$)
  • (\s+)
    :组1:匹配前导空格
  • (“UID.*$)
    :组2:匹配
    UID
    的内容
之后,使用以下替换(VisualStudio代码)


在使用正则表达式的情况下,应该使用捕获组

^(\s+)("UID".*$)
  • (\s+)
    :组1:匹配前导空格
  • (“UID.*$)
    :组2:匹配
    UID
    的内容
之后,使用以下替换(VisualStudio代码)

  • 选择
    “UID”
  • 使用菜单选择所有事件
  • 按键结束逗号回车
  • 键入“X”:“
  • 选择
    “UID”
  • 使用菜单选择所有事件
  • 按键结束逗号回车
  • 键入“X”:“