C# 怎么把字符串 “12a4d6u8” 分割为 “12” “a4” “d6” “u8”两个字符的子串?
时间: 2024-09-20 08:14:47 浏览: 35
在C#中,你可以使用`Split()`方法来分割字符串。这个方法会根据指定的分隔符将字符串拆分为子字符串数组。对于你提供的例子,如果每个连续的数字和字母视为一组,我们可以直接用空字符串(`""`)作为分隔符,因为它们本身就是自然的分界点:
```csharp
string input = "12a4d6u8";
string[] parts = input.Split(''); // 使用默认的单个字符作为分隔符
// 现在parts数组将是["12", "a4", "d6", "u8"]
```
如果你想要得到固定长度的子串(如两位数),可以先检查当前子串的长度,然后按需要处理:
```csharp
List<string> substrings = new List<string>();
for (int i = 0; i < input.Length; i += 2)
{
string subString = i + 2 <= input.Length ? input.Substring(i, 2) : input.Substring(i);
substrings.Add(subString);
}
// 如果有剩余的最后一个部分不足两位,也可以考虑是否添加
if (substrings.Last().Length == 1)
{
substrings.RemoveAt(substrings.Count - 1);
}
// 现在substrings列表将是["12", "a4", "d6", "u8"]
```
阅读全文