-1

我在 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"
4

4 回答 4

3

这是概念:

  1. 将基于'-'的字符串拆分为2个字符串

    在上面的示例中:“姓氏”和“123”。

  2. 检查第一个字符串的长度,如果太长就剪掉

    程序检查'lastname'并发现它太长,然后将其剪切为'lastna'

  3. 将 'lastna' 和 '123' 组合回一个字符串

我希望这有帮助

于 2013-06-27T14:44:23.610 回答
0

如果您只关注要接受的字符长度的限制,那么您可以使用

最长长度

文本框的属性。

例如:最大长度=“10”

限制文本框只接受 10 个字符。

于 2013-06-27T14:49:51.317 回答
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
于 2013-06-27T14:51:39.840 回答
-1

尝试使其适合例如子字符串操作。有关详细信息,请参阅http://msdn.microsoft.com/en-us/library/dd789093.aspx

于 2013-06-27T14:43:19.047 回答