我在Textbox1中有一个名为“lastname-132”的AD用户名,这个字符串长12个,所以我想将用户名添加到Textbox2中,但是缩短了,在textbox2中我只有一个字符串长度只有10个可用由于该程序正在使用的其他工具,所以我不想手动转换它,并希望只使用onleave事件自动转换它。
任何人都知道怎么写这个?
所以最终结果应该是这样的。
'String length can be 20 max.
Textbox1.Text = "lastname-123"
'some code to convert it to this:
'String length 10 max. Numbers and the "-" should stay the same, but remove letters if necessary.
Textbox2.Text = "lastna-123"
答案 0 :(得分:3)
这是概念:
将基于' - '的字符串拆分为2个字符串
在上面的例子中:'lastname'和'123'。
检查第一个字符串的长度,如果它太长则剪切
程序检查'lastname'并发现它太长了 把它切成'lastna'
将'lastna'和'123'组合成一个字符串
我希望这会有所帮助
答案 1 :(得分:0)
如果您只专注于要接受的字符长度限制,那么您可以使用
的maxlength
文本框的属性。
Ex:Maxlength =“10”
限制文本框只接受10个字符。
答案 2 :(得分:0)
如果没有更多信息,这将假设可以有多个连字符,数字可以是可变长度,您可以通过更改一个变量来更改字符串的最大长度。
Dim username As String = "lastname-123"
Dim max As Integer = 10
Dim lindex As Integer = username.LastIndexOf("-")
Dim numberLength As Integer = username.Length - lindex
Dim number As String = username.Substring(lindex)
Dim justName As String = username.Substring(0, lindex)
If justName.Length + numberLength >= max Then
username = justName.Substring(0, max - numberLength) & number
End If
答案 3 :(得分:-1)
尝试使其适合例如子串操作。有关详细信息,请参阅http://msdn.microsoft.com/en-us/library/dd789093.aspx。