如何在VB.Net中按规则将ItemNumber转换为PartNumber
VB.Net实现ItemNumber转PartNumber的解决方案
首先明确你的转换规则:
- 当ItemNumber为
"2.4.1.2.1"时,转换后的PartNumber应为"02-04-01-02" - 当ItemNumber为
"22.4.1.20.10"时,转换后的PartNumber应为"22-04-01-20" - 当ItemNumber为
"1.1"时,转换后的PartNumber应为"01"
你修改后的代码思路非常准确,我帮你完善并验证了,完全能满足需求:
Dim ItemNumber As String = "22.4.1.20.100.5" Dim PartNumbers As String() = ItemNumber.Split(New Char() {"."c}) ' 取除最后一段外的所有部分 Dim processedParts = PartNumbers.Take(PartNumbers.Length - 1).Select(Function(part) part.PadLeft(2, "0"c)) Dim PartNumber = String.Join("-", processedParts) Console.WriteLine(PartNumber) ' 输出:22-04-01-20-100
代码逻辑解释:
- 分割字符串:用
Split方法把ItemNumber按.分割成字符串数组 - 截取有效部分:使用
Take(PartNumbers.Length - 1)去掉数组的最后一段(这是规则的核心要求) - 补零处理:通过
PadLeft(2, "0"c)把每个部分补成两位数字,不足两位的左边补0 - 拼接结果:用
String.Join把处理后的部分用-连接成最终的PartNumber
我们来验证几个规则里的示例:
- 输入
"2.4.1.2.1"→ 输出"02-04-01-02"(符合要求) - 输入
"22.4.1.20.10"→ 输出"22-04-01-20"(符合要求) - 输入
"1.1"→ 输出"01"(符合要求)
内容的提问来源于stack exchange,提问作者user3335691
相关产品推荐
相关产品推荐

