簡體   English   中英

RegEx解析javascript對象數據

[英]RegEx to parse javascript object data

在HTML字符串中,我需要從Javascript對象中解析出值。 javascript始終與如下所示相同,因此我需要進行分析,因此需要對雙引號之間的值“ Ariat”和“ Mens> Footwear> Cowboy Boots> Square Toe”進行解析。 我認為正則表達式可能是要走的路,但是我以前從未使用過它,所以我希望從正確的方法中獲得一些指導? 也許是一個正則表達式的例子,還是我不應該使用正則表達式而轉向另一個方向?

 <script type="text/javascript">
dataLayer=[{
"conversionType": "Viewed Product",
"conversionAttributes": [

{
"brand_name": "Ariat",
"id": 2464833,
"category" : "Mens>Footwear>Cowboy Boots>Square Toe",
"image": "http://demandware.edgesuite.net/aayu_prd/on/demandware.static/-/Sites-co-master-catalog/default/dwec67444c/images/productimages/237083_90751-mens-rambler-boot-wicker_large.jpg",
"name": "Mens Rambler Square Toe Boot",
"msrp": "159.95",
"price": "149.95",
"sku": "ARIAT-MRamblerSqToe",
"parentSku" :"ARIAT-MRamblerSqToe",
"vendor": "Ariat"
}
]
}];
</script>
Regex pattern = new Regex("\"((?:\\\"|[^\"])+)\" *: *\"((?:\\\"|[^\"])+)\");

var matches = pattern.Matches(data);

foreach (var match in matches)
{
    var varName = match.Groups[1].Value;
    var value = match.Groups[2].Value;
}

該模式基本上說:找到開引號,然后找到任意數量的\\“或”,然后是閉引號。 然后是零個或多個空格,一個冒號,零個或多個空格,然后再次使用相同的引用模式。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM