我想從給定的MDX查詢中提取信息或查詢軸元素。 假設我有此查詢:從MDX查詢提取元素的正則表達式
SELECT NON EMPTY {
Hierarchize({[Product].[Product Family].Members})
} ON COLUMNS,
NON EMPTY Hierarchize (
Union (
CrossJoin ({[Time].[1997].[Q1]},
CrossJoin ([Store].[Store Name].Members,
[Store Type].[Store Type].Members
)
),
CrossJoin({[Time].[1997].[Q2]},
CrossJoin([Store].[Store Name].Members,
[Store Type].[Store Type].Members
)
)
)
) ON ROWS FROM [Sales]
WHERE {
Hierarchize({[Measures].[Unit Sales]})
}
我想提取物具有圖案像這樣的字符串:([...])。 [...]或 [...] [。 ..]。會員
請注意,...表示任何字母數字,以及內部括號意味着什麼可以重現。因此,我期望的結果是:
[Product]。[Product Family] .Members; [時間] [1997] [Q1]。。 [Time]。[1997]。[Q2]; [Store]。[Store Name] .Members; [商店類型]。[商店 類型]。成員; [措施] [單位銷售]
我盡力終於想通這個表達式:
\[.*?[A-Za-z\s]\](.*?(\.\[.*?[A-Za-z\s]\])|(\.Members))
但結果是:
[產品] [產品系列。 ; [Time]。[1997]。[Q1]},CrossJoin([Store]; [Store Name] .Members,[Store Type]。[Store Type]; [Time]。[1997]。[Q2]}, CROSSJOIN([存儲] [存儲名稱] .Members,[存儲類型] [商鋪類型]。 [銷售] WHERE {Hierarchize({[措施] [單位銷售]
能有人給?我的正則表達式的任何修正 任何幫助,將不勝感激
非常感謝!它就像魅力一樣。 – 2013-04-08 03:31:05
太棒了!別客氣!^_^ – Jerry 2013-04-08 04:50:33
@Jerry比我的更好的解決方案。做得好。 – DHN 2013-04-08 06:40:15