gpt4 book ai didi

C# 正则表达式模式将字符串拆分为 2 个字符的子字符串

转载 作者:行者123 更新时间:2023-11-30 21:33:04 25 4
gpt4 key购买 nike

我正在尝试找出一个正则表达式,用于将字符串拆分为 2 个字符的子字符串。

假设我们有以下字符串:

string str = "Idno1";
string pattern = @"\w{2}";

使用上面的模式会得到“Id”和“no”,但它会跳过“1”,因为它与模式不匹配。我想要以下结果:

string str = "Idno1"; // ==> "Id" "no" "1 "
string str2 = "Id n o 2"; // ==> "Id", " n", " o", " 2"

最佳答案

Linq 可以简化代码。 Fiddle版本有效

想法:我有一个 chunkSize = 2 作为你的要求,然后,Take 索引处的字符串 (2,4,6,8,... ) 获取字符 block 并将它们 Joinstring

public static IEnumerable<string> ProperFormat(string s)
{
var chunkSize = 2;
return s.Where((x,i) => i % chunkSize == 0)
.Select((x,i) => s.Skip(i * chunkSize).Take(chunkSize))
.Select(x=> string.Join("", x));
}

有输入就有输出

Idno1 --> 
Id
no
1

Id n o 2 -->
Id
n
o
2

关于C# 正则表达式模式将字符串拆分为 2 个字符的子字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51770742/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com