Fw: [問題] 字串透過Regex Parse...

作者: KSmart (經濟不景氣,好景不常在)   2017-04-25 22:03:37
※ [本文轉錄自 RegExp 看板 #1O_rRK0H ]
作者: KSmart (經濟不景氣,好景不常在) 看板: RegExp
標題: [問題] 字串透過Regex Parse...
時間: Tue Apr 25 22:01:53 2017
我想要設定一個動態的格式(字串),使用者再傳入參數時,能夠動態增加..
因此,我定義傳入的格式如下:
[Customer=AAA][Phone=09123456789]
or
[Customer=AAA][Phone=09123456789][Name=Jonh]
or
[Customer=AAA][Phone=09123456789][Name=Jonh][Sex=Boy]
我希望Parse後,塞入C#的Dictionary,因此定義成[Key1=Value1][Key2=Value2][][]..
目前我可以Parse且塞入Dictionary。
Regex \[(?<Key>.+?)=(?<Value>.*?)\]
但是,遇到一個問題..
如果傳入的Value有[],則會Fail..
[Customer=AAA][Phone=09123456789][ProgramName=AAA[1.0.2.5]][Name=John]
請問有有甚麼方式可以解決呢?
作者: YahooTaiwan (超可愛南西我老婆)   2017-04-25 22:28:00
改用 JSON
作者: IKAFIRE (沒有)   2017-04-26 00:19:00
escape char,但改用現成格式應該更簡單
作者: sam319 (Sam)   2017-06-14 22:02:00
\[(?<Key>.+?)=(?<Value>.*?\]?)\]

Links booklink

Contact Us: admin [ a t ] ucptt.com