У меня есть следующий текст .....Использование регулярных выражений, чтобы найти определенный шаблон текста
('virtualMachines_20160810_VM02_name'),'2016710113655.vhd'))]"
},
"caching": "ReadWrite"
},
"dataDisks": []
},
"osProfile": {
"computerName": "[parameters('virtualMachines_20160810_VM02_name')]",
"adminUsername": "marc.kean",
"windowsConfiguration": {
"provisionVMAgent": true,
"enableAutomaticUpdates": true
},
"secrets": [],
"adminPassword": "[parameters('virtualMachines_20160810_VM02_adminPassword')]"
},
"networkProfile": {
"networkInterfaces": [
{
"id": "[resourceId('Microsoft.Network/networkInterfaces', parameters('networkInterfaces_20160810_vm02308_name'))]"
}
]
}
},
Я пытаюсь использовать регулярные выражения, чтобы точно соответствовать раздел этого текста. Раздел, который я хочу сопоставить, - это вся строка, содержащая текст «osProfile» (включая все пробелы в начале и конце строки) вплоть до всей строки (включая любые пробелы), включая строку чуть выше " networkProfile "
Это то, что у меня есть до сих пор, но это соответствует двум группам захвата, я хочу только конкретно указать текст, который я указал.
\s*"osProfile[\w|\W]*},(\s*"networkProfile")
У меня есть это:
((\s*"osProfile[\w|\W]*?},)([\w|\W
является ли это JSON-файл? не легче ли получить его как объект, чем сделать регулярное выражение для его извлечения? – ssbb