有没有办法在文本框中拆分然后加入字符串?
示例:
我有一个名为Textbox1的文本框,其值为"001-2012-0116"
然后我想将其拆分(" - ")然后加入生成的3个字符串
然后结果将变为"00120120116"
然后我想得到结果并将其放在数据类型为字符串的resultNumber
中。
总结一下:
Textbox1(Value) = "001-2012-0116"
Dim resultNumber as String
resultNumber(Value) = "00120120116"
答案 0 :(得分:3)
正如其他人所说,分裂并不是这种情况下最好的方法。分割后你需要使用String.Join()
来获得预期的结果:
Dim resultNumber = String.Join("", "001-2012-0116".Split("-"))
所以这是一种双重工作。简单地用空字符串替换短划线(-
):
Dim resultNumber = "001-2012-0116".Replace("-", "");
答案 1 :(得分:0)
您希望在这种情况下使用String.Replace()
:
resultNumber = Textbox1.Value.ToString().Replace("-", String.Empty)
显然,这会将所有内容保留为String
,但如果您想将字符串用作数字(因为它们是数字),那么您需要将其转换为Integer
。
如果你想将值拆分成一个字符串数组,那么你可以使用以下内容,但是你并不是真的想要这个结果,但是你问到了拆分字符串......
Dim result As String() = words.Split("-")
答案 2 :(得分:0)
你可以尝试这种方法作为灵感:
Sub Main
Dim txt as String
Dim intVal as Int64
txt = "001-2012-0116"
If(Int64.TryParse(txt.Replace("-",""), intVal))
Console.WriteLine(intVal)
End If
End Sub
答案 3 :(得分:0)
我知道这已经得到了解答,但有时我更喜欢使用RegularExpression
类。
在你的情况下,这是如何实现的......
Imports System.Text.RegularExpressions 'Need to import the namespace
Dim resultNumber As String = Regex.Replace(TextBox1.Text, "-", String.Empty) 'Do a simple replace on "-"
另一方面,您在单个字符串上进行简单替换,因此您接受的答案在这种情况下更合适。在处理模式等时,我认为正则表达式很棒。