Аналог/замена Contains помогите разобраться

Язык Visual Basic на платформе .NET.

Модераторы: Ramzes, Sebas

oldserv
Начинающий
Начинающий
 
Сообщения: 2
Зарегистрирован: 08.03.2008 (Сб) 11:44

Аналог/замена Contains помогите разобраться

Сообщение oldserv » 08.03.2008 (Сб) 20:27

Собственно сам вопрос в теме, поясню, имеем массив строк, запускаем цикл
Код: Выделить всё

Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim massiv() As String = {"1", "2", "3", "4", "5", "11", "15", "16", "test данные", "testfile тест"}
        Dim builder As New System.Text.StringBuilder

        For Each stroka As String In massiv
            'а вот тут собственно вопрос:
            If stroka.Contains("test") Then
                builder.AppendLine(stroka)
            End If
        Next
        Dim result As String = builder.ToString
        MsgBox(result)
    End Sub
End Class



Я понимаю что Contains проверяет содержится ли в строке слово в котором содержится test поэтому такой результат и выводит:
test данные
testfile тест
В этом и проблема, как сделать точную проверку? т.е чтобы в результате вывелось только "test данные", проверяло именно на слово, если в строке содержится слово test то выводим в результ, а testfile не выводил, запарился думать как реализовать, т.к работа жестко привязана с массивом, у кого какие идеи есть? мож кто сталкивался, плиз хелп

Nord777
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1144
Зарегистрирован: 22.02.2004 (Вс) 13:15
Откуда: Подольск

Сообщение Nord777 » 08.03.2008 (Сб) 22:06

используй регулярное выражение "(?:\s|^)test(?:\s|$)"
Microsoft Visual Studio 2008
Microsoft .NET Framework 3.5

oldserv
Начинающий
Начинающий
 
Сообщения: 2
Зарегистрирован: 08.03.2008 (Сб) 11:44

Сообщение oldserv » 09.03.2008 (Вс) 12:49

Регулярками можно, но всё же думал может быть уже есть встроенное средство, походу нету, спасибо за совет

Sebas
Неуловимый Джо
Неуловимый Джо
Аватара пользователя
 
Сообщения: 3626
Зарегистрирован: 12.02.2002 (Вт) 17:25
Откуда: столько наглости такие вопросы задавать

Сообщение Sebas » 10.03.2008 (Пн) 15:21

oldserv писал(а):Регулярками можно, но всё же думал может быть уже есть встроенное средство, походу нету, спасибо за совет


Что значит ВСТРОЕННОЕ? А разбить строку по словам и проверить в голову не приходит?

Код: Выделить всё
        If Array.IndexOf(s.Split(New Char() {Char.Parse(" ")}, StringSplitOptions.RemoveEmptyEntries), "test")>-1 Then

        End If


Ну, естейстенно, массив нужно эрейзить.
- Я никогда не понимал, почему они приходят ко мне чтобы умирать?

sebas<-@->mail.ru


Вернуться в Visual Basic .NET

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5

    TopList