-1

我有这个字符串

 Dim test As String = "12,32,12,32,12,12,32,15,16,15,14,12,32"

并想检索一个字符串

newstr = 12,32,15,16,14

我试过这么多

Dim test As String = "12,32,12,32,12,12,32,15,16,15,14,12,32"
Dim word As String
Dim uc As String() = test.Split(New Char() {","c})
For Each word In uc
' What can i do here?????????
Next

只有唯一的数字我怎么能在 vb asp.net 中做到这一点

正确答案

Dim test As String = "12,32,12,32,12,12,32,15,16,15,14,12,32"
                Dim word As String
                Dim uc As String() = test.Split(New Char() {","c}).Distinct.ToArray
                Dim sb2 As String = "-1"
                For Each word In uc
                    sb2 = sb2 + "," + word
                Next
                MsgBox(sb2.ToString)
4

4 回答 4

6
Dim test As String = "12,32,12,32,12,12,32,15,16,15,14,12,32"
Dim uniqueList As String() = test.Split(New Char() {","c}).Distinct().ToArray()
于 2012-11-17T06:10:41.067 回答
2
    Dim test As String = "12,32,12,32,12,12,32,15,16,15,14,12,32"
    'Split into an array
    Dim testArray As String() = test.Split(",")
    'remove duplicates
    Dim uniqueTestArray As String() = testArray.Distinct().ToArray())
    'Concatenate back to string
    Dim uniqueString As String = String.Join(",", uniqueTestArray)

或全部在一行中:

   Dim uniqueString As String = String.Join(",", test.Split(",").Distinct().ToArray())
于 2012-11-17T06:22:09.340 回答
0

更新对不起我忘了把新字符串加在一起

解决方案:

Dim test As String = "12,32,12,32,12,12,32,15,16,15,14,12,32"

Dim distinctArray = test.Split(",").Distinct()

Dim newStr As String = String.Join(",", distinctArray.ToArray())

培训参考:查看此网站以获取有关 LINQ 的指南,这将使您更轻松地应对这些类型的编程挑战。LINQ 教程

于 2012-11-17T06:07:42.977 回答
-1

您忘记为 Distinctand ToArray 加上括号。因为这些是方法

Dim uc As String() = test.Split(New Char() {","c}).Distinct().ToArray()
于 2021-01-29T13:49:04.623 回答