C-正则,常用几种数据解析-端午快乐
1 //C#-正则,常用几种数据解析-端午快乐
2
3 //匹配对象
4 var expl = "[{\"订单号\":2006,\"价格\":888.90,\"下单时间\":\"2016-06-08 17:01\",\"支付状态\":\"已支付\",\"支付时间\":\"2016-06-08 17:10\"},{\"订单号\":2007,\"价格\":999.99,\"下单时间\":\"2016-06-08 17:01\",\"支付状态\":\"已支付\",\"支付时间\":\"2016-06-08 17:10\"},{\"订单号\":2008,\"价格\":999,\"下单时间\":\"2016-06-08 17:01\",\"支付状态\":\"未支付\",\"支付时间\":\"\"}]";
5
6 //1.查询是否存在“订单号”数据的字符串
7 var isExists = Regex.IsMatch(expl, @"价格");
8 Console.WriteLine("1.查询是否存在“订单号”数据的字符串");
9 Console.WriteLine(isExists);
10
11 //2.查询一个“价格”(不包含小数部分)
12 var m02 = Regex.Match(expl, "\"价格\":\\d+");
13 Console.WriteLine("\n2.查询一个“价格”(不包含小数部分)");
14 Console.WriteLine(m02.Value);
15
16 //3.查询一个订单“价格”(包含价格的小数部分)
17 var m03 = Regex.Match(expl, "\"价格\":[^,]+");
18 Console.WriteLine("\n3.查询一个订单“价格”(包含价格的小数部分)");
19 Console.WriteLine(m03.Value);
20
21 //4.查询全部订单“价格”
22 MatchCollection m04 = Regex.Matches(expl, "\"价格\":[^,]+");
23 Console.WriteLine("\n4.查询全部订单“价格”");
24 foreach (Match m004 in m04)
25 {
26 Console.WriteLine(m004.Value);
27 }
28
29 //5.查询全部订单“价格”,输出价格信息
30 MatchCollection m05 = Regex.Matches(expl, "\"价格\":(?<price>[^,]+)");
31 Console.WriteLine("\n5.查询全部订单“价格”,输出价格信息");
32 foreach (Match m005 in m05)
33 {
34 Console.WriteLine(m005.Groups["price"].Value);
35 }
36
37 //6.查询全部订单信息,输出信息
38 MatchCollection m06 = Regex.Matches(expl, "\"订单号\":(?<orderid>[^,]+),\"价格\":(?<price>[^,]+),\"下单时间\":\"(?<createtime>[^,]+)\",\"支付状态\":\"(?<paystatus>[^,]+)\"");
39 Console.WriteLine("\n6.查询全部订单信息,输出信息");
40 foreach (Match m006 in m06)
41 {
42
43
44 Console.WriteLine(@"{0}:{1},{2}:{3},{4}:{5},{6}:{7}",
45 m006.Groups["orderid"], m006.Groups["orderid"].Value,
46 m006.Groups["price"], m006.Groups["price"].Value,
47 m006.Groups["createtime"], m006.Groups["createtime"].Value,
48 m006.Groups["paystatus"], m006.Groups["paystatus"].Value);
49 }
50
51 //7.查询“未支付”订单信息
52 MatchCollection m07 = Regex.Matches(expl, "\"订单号\":(?<orderid>[^,]+),\"价格\":(?<price>[^,]+),\"下单时间\":\"(?<createtime>[^,]+)\",\"支付状态\":\"(?<paystatus>未支付)\"");
53 Console.WriteLine("\n7.查询“未支付”订单信息");
54 foreach (Match m007 in m07)
55 {
56
57
58 Console.WriteLine(@"{0}:{1},{2}:{3},{4}:{5},{6}:{7}",
59 m007.Groups["orderid"], m007.Groups["orderid"].Value,
60 m007.Groups["price"], m007.Groups["price"].Value,
61 m007.Groups["createtime"], m007.Groups["createtime"].Value,
62 m007.Groups["paystatus"], m007.Groups["paystatus"].Value);
63 }
64
65 //8.大小写匹配结果
66 var m08 = Regex.IsMatch("I love ZuGuo", "ZUGUO");
67 Console.WriteLine("\n8.大小写匹配结果");
68 Console.WriteLine(m08);
69
70 //9.忽略大小写
71 var m09 = Regex.IsMatch("I love ZuGuo", "ZUGUO",RegexOptions.IgnoreCase);
72 Console.WriteLine("\n9.忽略大小写");
73 Console.WriteLine(m09);
74
75 //10.匹配有空格的字符串信息
76 var m10 = Regex.Match("端 午 快 乐", "[^A]+");
77 Console.WriteLine("\n10.匹配有空格的字符串信息");
78 Console.WriteLine(m10.Value);
79
80 Console.ReadLine; 上一篇:C#基础教程(正则表达式元字符)
下一篇:C#实现网页爬虫获取数据
相关文章
- Spring Boot中对接Twilio以实现发送验证码和验证短信码
- Spring Boot 3.5:这次更新让你连配置都不用写了,惊不惊喜?
- Spring Boot+Pinot实战:毫秒级实时竞价系统构建
- SpringBoot敏感配置项加密与解密实战
- SpringBoot 注解最全详解,建议收藏!
- Spring Boot 常用注解大全:从入门到进阶
- SpringBoot启动之谜:@SpringBootApplication如何让配置化繁为简
- Springboot集成Kafka原理_spring集成kafka的原理
- Spring Boot中@Data注解的深度解析与实战应用
- 大佬用1000字就把SpringBoot的配置文件讲的明明白白!
