我在richtextbox1中有一个文本,我想提取字符串的每3个字符等等,例如:
richtextbox1.text = "It's Chrismas time"
结果,从右到左的 3 序列:“Isrmte”
结果,从左到右的 3 序列:“etmrsI”
我该怎么做?
代码可以是C# 2010。我将翻译成vb.net 2010。
最佳答案
richtextbox1.text.Where((c, i) => i % 3 == 0)
怎么样?
或 RTL:richtextbox1.text.Reverse().Where((c, i) => i % 3 == 0)
在 VB 中:richtextbox1.text.Where(Function(c, i) i Mod 3 = 0)
但是,您的示例并未显示提取每三个字符 - 您的示例忽略空格,您可以这样做:
text.Where(Function(c) Not Char.IsWhiteSpace(c)).Where(Function(c, i) i Mod 3 = 0)
要将文本放入另一个文本框中,您可以这样做:
textbox2.text = String.Join("", textbox1.text
.Where(Function(c) Not Char.IsWhiteSpace(c))
.Where(Function(c, i) i Mod 3 = 0))
这是我直接从 VS 2010 复制的测试代码:
Dim text = "It's Chrismas time"
Console.WriteLine(String.Join("",
text.Where(Function(c) Not Char.IsWhiteSpace(c)) _
.Where(Function(c, i) i Mod 3 = 0)))
关于c# - 按字符串中的序列提取字符 vb 2010,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4528235/