楼主:
KSmart (经济不景气,好景不常在)
2017-04-25 22:01:53我想要设定一个动态的格式(字串),使用者再传入参数时,能够动态增加..
因此,我定义传入的格式如下:
[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]
请问有有什么方式可以解决呢?
作者:
LPH66 (-6.2598534e+18f)
2017-04-25 22:17:00你可能要考虑改一下传入格式, 不然除非你保证所有 Value都会 [] 成对那还有办法, 否则无解改传入格式有两个方向: 一是分隔符号换成保证不在 Value里出现的字, 另一是定义跳脱字串给 Value 使用