我写的一个正则表达式在测试工具中,正确匹配,为什么到regex.match就匹配不对呢?

lashengcrh 2016-12-21 06:17:37
我写的一个正则表达式,在测试工具中正确匹配,为什么到regex.match就匹配的结果不对呢?
为何会出现这种情况?
...全文
367 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
tcmakebest 2016-12-22
  • 打赏
  • 举报
回复
为什么不写出来,谁知道你是不是用错了.
  • 打赏
  • 举报
回复
纸上谈兵,你不贴代码有啥好说的?
巴士上的邂逅 2016-12-22
  • 打赏
  • 举报
回复
贴代码贴代码
巴士上的邂逅 2016-12-22
  • 打赏
  • 举报
回复
8楼正解。 你用的是Regex.Match()?你看看他的注释是什么!在指定的输入字符串中搜索指定的正则表达式的第一个匹配项。
EnForGrass 2016-12-22
  • 打赏
  • 举报
回复
引用 7 楼 lashengcrh 的回复:
C# 代码中匹配出来的,总是第一个正确,剩下就是只配出了一个数字。
用Regex.Matches(),去match.Value foreach(Match m in Regex.Matches()) { Console.WriteLine(m.Value); }
lashengcrh 2016-12-22
  • 打赏
  • 举报
回复
C# 代码中匹配出来的,总是第一个正确,剩下就是只配出了一个数字。
lashengcrh 2016-12-22
  • 打赏
  • 举报
回复
3O|1|H********************
2O|1|G***************
1O|1|H*******************

reg = new Regex(@"(\d)+O(\|)(\d)+(\|)", RegexOptions.Multiline);

代码就是这样的,

lashengcrh 2016-12-21
  • 打赏
  • 举报
回复
引用 1 楼 From_TaiWan 的回复:
用的什么测试工具,你自己的代码是什么?
文本内容是从串口读出的,含有不可见字符,会不会是这个原因呢? 我把文本拷贝到测试工具中,都是可以匹配出来的,就是在C#代码中匹配不出来。 匹配前,需要将文本内容转码吗?
秋的红果实 2016-12-21
  • 打赏
  • 举报
回复
用的什么测试工具,你自己的代码是什么?

110,535

社区成员

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

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

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