首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

一个C# 正则表达式的有关问题

2013-01-19 
一个C# 正则表达式的问题目前做串口开发 需要发送 十六进制 数据包问题如下MatchCollection 集合 Regex.

一个C# 正则表达式的问题
目前做串口开发 需要发送 十六进制 数据包
问题如下


MatchCollection 集合 = Regex.Matches("17016112233445566","正则表达式");
List<byte> 缓存 = new List<byte>
foreach (Match 字节 in 集合)
    {
       缓存.Add(byte.Parse(m.Value, NumberStyles.HexNumber))
    }


我要 把1701611223344....字符串 发送给从机 第一字节AA 第二字节16 11 22 ... 这样的话 正则表达式如何写呢? 
忘论坛兄弟指点小弟 急切。。 正则表达式 串口发送 MatchCollection Regex.Matches c#
[解决办法]
这用什么正则啊,都知道截取几位,就直接substring取出来,然后转为16禁制呗
[解决办法]
List<string> 缓存 = Regex.Split("17016112233445566","(?<=\\G\\d{2})").ToList();

[解决办法]

 string str = "17016112233445566";

                List<string> List = new List<string>();
                List.Add(str.Substring(0, 3));
                var newList = System.Text.RegularExpressions.Regex.Split(str.Substring(3), "(?<=\\G.{2})(?!$)");
                List.AddRange(newList.ToList());
                List<string> resultList = new List<string>();
                foreach (var s in List)
                {
                    int num = Convert.ToInt32(s);
                    resultList.Add(Convert.ToString(num, 16));
                }

[解决办法]
string str = "17016112233445566";
            var ary = Regex.Matches(str, @"(?<=\d{3}(\d{2})*)\d{2}");
            foreach (Match m in ary)
            {
                Console.WriteLine(m.Value);
            }

热点排行