c# 正则 匹配字符串

swmwlm1 2012-03-13 10:35:05
1.字符串文本如下:
|2#64#10086#(01/02)特别提醒:尊敬的客户,您于2012年01月17日09时39分以用户服务密码验证方式通过浙江移动综合查询系统查询了您2011年12月的通#12-01-17 09:39:34
|4#60#10086#(01/02)您的手机号码现已开通!帐户余额50.0元,话费有效期至2012年3月13日。发短信7231至10086办理话费信使服务,每月1元可获每#11-12-14 13:33:21
|18#24#10086#尊敬的神州行客户:您好,03月11日您成功充值300.00元,当前您的充值帐户余额为290.82元。短信发1至10086查询即时话费信息。#12-03-11 14:30:26
|20#24#10086#尊敬的客户,您参加的集团心机0元欢乐购活动,本月已返充108.00元至您的帐户中,该活动还有20个月到期,请您关注#11-12-30 08:31:43
|21#04#8613857445872#元旦3号加班,陈波平#11-12-30 14:19:24
|22#04#8615168182252#祝黄总身体健康,新年快乐!#11-12-31 13:02:56
|23#04#8615240407331#这阵忙什么呢?还好吗?我换了个新号刚在点歌频道给你点了音乐,你拨 1259073582按 3键听吧,里面还有我的一段话 听听就知道我是谁了#12-01-18 15:50:51
|24#04#8615967847225#新年到|,祝裾到;祝您天天开心笑,日日数钞票.罗由光祝领导新年块乐!#11-12-31 18:28:57
|25#04#8615967847225#新年到,祝福到;祝您天天开心笑,日曰数钞票;罗由光祝领导新年快乐!#11-12-31 19:00:18
|26#04#8613967800708#新年快乐,身体安康!#11-12-31 23:59:51
|27#04#8615168182252#祝梁身体健康,新年 #12-01-01 07:37:08

2.因为短信内容里有分隔符“|”,所以想使用正则表达式把每条短信存储到数组,求该正则怎么写
...全文
65 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
欢乐的小猪 2012-03-13
  • 打赏
  • 举报
回复
Regex也有Split函数,你便意吧
porschev 2012-03-13
  • 打赏
  • 举报
回复



string str = @"|2#64#10086#(01/02)特别提醒:尊敬的客户,您于2012年01月17日09时39分以用户服务密码验证方式通过浙江移动综合查询系统查询了您2011年12月的通#12-01-17 09:39:34
|4#60#10086#(01/02)您的手机号码现已开通!帐户余额50.0元,话费有效期至2012年3月13日。发短信7231至10086办理话费信使服务,每月1元可获每#11-12-14 13:33:21
|18#24#10086#尊敬的神州行客户:您好,03月11日您成功充值300.00元,当前您的充值帐户余额为290.82元。短信发1至10086查询即时话费信息。#12-03-11 14:30:26
|20#24#10086#尊敬的客户,您参加的集团心机0元欢乐购活动,本月已返充108.00元至您的帐户中,该活动还有20个月到期,请您关注#11-12-30 08:31:43
|21#04#8613857445872#元旦3号加班,陈波平#11-12-30 14:19:24
|22#04#8615168182252#祝黄总身体健康,新年快乐!#11-12-31 13:02:56
|23#04#8615240407331#这阵忙什么呢?还好吗?我换了个新号刚在点歌频道给你点了音乐,你拨 1259073582按 3键听吧,里面还有我的一段话 听听就知道我是谁了#12-01-18 15:50:51
|24#04#8615967847225#新年到|,祝裾到;祝您天天开心笑,日日数钞票.罗由光祝领导新年块乐!#11-12-31 18:28:57
|25#04#8615967847225#新年到,祝福到;祝您天天开心笑,日曰数钞票;罗由光祝领导新年快乐!#11-12-31 19:00:18
|26#04#8613967800708#新年快乐,身体安康!#11-12-31 23:59:51
|27#04#8615168182252#祝梁身体健康,新年 #12-01-01 07:37:08";



Regex re = new Regex("\\d+.*?\\d{2}\\:\\d{2}", RegexOptions.None);
MatchCollection mc = re.Matches(str);
foreach (Match ma in mc)
{
Console.WriteLine(ma.Value);
}


Console.ReadLine();


EnForGrass 2012-03-13
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 bdmh 的回复:]

如果你仅仅是因为 | 分隔,那split不就行吗
string s = "a|b|c|d";
string[] ss = s.Split('|');
[/Quote]
就是啊
bdmh 2012-03-13
  • 打赏
  • 举报
回复
如果你仅仅是因为 | 分隔,那split不就行吗
string s = "a|b|c|d";
string[] ss = s.Split('|');

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧