我遇到处理正则表达式的问题。 我需要的是创建一个正则表达式,检查通过控制台写入的一堆数字,用空格分隔,并检查它们中有多少: 1)无符号短 2)unsigned int 3)无符号长 对于像我这样没有任何正常表达经验的人来说,这是不可能的。
答案 0 :(得分:8)
实际上,您应该编写一个正则表达式,将输入字符串拆分为令牌,其中令牌是空格或数字字符串,然后编写非基于正则表达式的表达式分析器,确定该数字是否合法长,短等。
也许你可以展示你迄今为止在这个问题上所做的工作,并提出一个更具体的问题来解决你的问题。
答案 1 :(得分:4)
你在RegEx中问得太多了......它当然可以处理数字的分割,但你应该通过迭代正则表达式之外的每一个来实现逻辑来检查它们是什么类型的数字。
请参阅Jon Skeet关于此的优秀博客:http://msmvps.com/blogs/jon_skeet/archive/2005/09/21/67247.aspx
答案 2 :(得分:2)
为什么要使用正则表达式?您可以使用String.Split()
,UInt32.TryParse()
,UInt64.TryParse()
(无符号长整数)和UInt16.TryParse()
(无符号短整数)。