2

我一直在尝试这样做一段时间,但我不确定。

例如,列表框内容是:

id = 0 - Block
id = 1 - Cow

我想要的是只获取要显示在文本框中的 ID 号

所以对于一个文本框,它看起来像这样:

0
1

没有其他东西。

谢谢大家 :)

4

2 回答 2

0

也许:

Dim s = ListBox1.SelectedItem.ToString()
s = s.replace("id =","")  'remove "id ="
s = s.Substring(0,s.IndexOf("-")-1).Trim() 'truncate s from the start to the "-"
于 2012-08-16T22:36:02.890 回答
0

还可以使用:

Dim id = Split(listbox.SelectedItem.ToString(),"-")(0) 

然后做你的替换:

id = id.Replace("id = ","")

或者

id = listbox.SelectedItem.ToString()
id = id.Substring(id.IndexOf("=") +1), id.IndexOf("-") -1)

+1 和 -1 将移动到一个空格之外并在一个空格之前停止。

这两种解决方案都需要减少 2 次方法调用,如果我没记错的话,这意味着在内存中创建更少的字符串副本,做你正在做的事情。不过,不要在最后一部分引用我的话。=)

于 2012-08-16T22:47:43.103 回答