我有這個來自 HTML 的 JSON 物件。
{
"isCompany": false,
"accommodations": [
{
"id": "00000000031000006435",
"isChecked": false,
"name": "Théo",
"addressLine1": "Rue des patriotes 40 Y",
"addressLine2": "1050 Ixelles",
"nightsDeclared": 5,
"schoolNightsDeclared": 3,
"schoolNightsAttached": 0,
"taxableNights": 2.0,
"totalPayment": 0.0,
"isInProgress": true,
"isLate": false,
"isPayed": "false",
"deadline": "2021-12-31",
"initialAmount": 0.0,
"remainingAmount": 0.0
},
{
"id": "00000000031000006438",
"isChecked": false,
"name": "Théo",
"addressLine1": "Rue des Gens 45 B",
"addressLine2": "1040 Etterbeek",
"nightsDeclared": 5,
"schoolNightsDeclared": 3,
"schoolNightsAttached": 0,
"taxableNights": 2.0,
"totalPayment": 0.0,
"isInProgress": true,
"isLate": false,
"isPayed": "false",
"deadline": "2021-12-31",
"initialAmount": 0.0,
"remainingAmount": 0.0
}
]
}
我知道在 Gatling 中,可以通過撰寫此正則運算式來獲取住宿 ID:
check(regex(""""accommodations":\[\{"id":"(.*?)"""").saveAs("accommodationId"))
現在我的問題是,得到“isInProgress”的正則運算式是什么?
uj5u.com熱心網友回復:
別!
在這種特定情況下使用正則運算式可能會導致您的代碼因輕微的輸入更改而中斷,并會導致代碼不可讀。
而是反序列化并作為字典訪問?
[a['id'] for a in json.loads(json_string)['accommodations']]
另外,您是否嘗試過簡單地替換id為所需欄位的名稱?
如果您堅持為此使用正則運算式,請查看在線正則運算式網站,如 regex101.com、regexr.com、regextester.com 等(搜索“在線正則運算式測驗”)并嘗試自己解決這個問題。如果您的代碼不起作用,請再次提問。
uj5u.com熱心網友回復:
好的,你的正則運算式中有這個
"id":"(.*?)"
您只需更改為預期的鍵名isInProgress或任何其他鍵名。還要注意"周圍(.*?)- 由于id字串的值,它們是必需的,但值是isInProgress另一種型別。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/389373.html
上一篇:忽略split()中的模式
