Skip to main content
 首页 » 编程设计

c#之使用正则表达式(正则表达式)拆分数据

2024年02月01日27insus

我需要一些帮助来匹配这个示例字符串中的数据:

 req:{REQUESTER_NAME},key:{abc},act:{UPDATE},sku:{ABC123,DEF-123},qty:{10,5} 

基本上,每个参数都由“,”分隔,但它也包含在 {} 中,我需要一些关于正则表达式的帮助,因为我不太擅长它。

期望的输出:

req = "REQUESTER_NAME" 
key = "abc" 
act = "UPDATE" 
sku[0] = "ABC123" 
sku[1] = "DEF-123" 
qty[0] = 10 
qty[1] = 5 

请您参考如下方法:

我建议你做以下事情

  1. 使用 String Split with ',' 字符作为分隔符(例如输出请求:{REQUESTER_NAME})
  2. 对每对数据,用';'进行字符串拆分作为分隔符的字符(例如输出“req”、“{REQUESTER_NAME}”)
  3. 用“”替换字符'{'和'}'(例如输出REQUESTER_NAME)
  4. 再次使用','字符作为分隔符进行字符串拆分(例如输出“ABC123”、“DEF-123”)

那应该可以完美地解析它。您可以在结果输入时将结果存储到您的数据结构中。(例如,您可以在第 2 步存储名称,而某些值可能在第 3 步可用,而其他一些值可能在第 4 步可用)

希望对您有所帮助

注意: - 如果您不知道字符串拆分 - http://www.dotnetperls.com/split-vbnet - 如果您不知道字符串替换 - http://www.dotnetperls.com/replace-vbnet