подстрока и метод indexOf

#vb.net #substring

#vb.net #подстрока

Вопрос:

Мое задание в Visual Basic 2010 — создать форму заказа, содержащую два текстовых поля: одно для имени, а другое для адреса.

И мы предполагаем использовать IndexOf метод по адресу.

Я понимаю, что IndexOf возвращает позицию символа и количество символов.

Какова была бы цель использования IndexOf метода по адресу в этом экземпляре?

Я не понимаю, что я буду искать, когда пользователь вводит свой адрес, который будет представлять собой числа и строковые символы.

Я думаю, что я понимаю, что делает этот IndexOf метод, но почему и для чего я его использую?

Комментарии:

1. Возможно, это был бы хороший вопрос для того, кто дал вам задание. Обычно в назначениях говорится что-то вроде «использовать indexOf по адресу, чтобы …»

Ответ №1:

Обычно вы используете IndexOf для —

Посмотрите, содержит ли строка что-то

 If someString.IndexOf("Avenue") > - 1 Then
   'do something
End If
  

Получите начальную позицию значения в строке, затем это можно использовать для извлечения части строки. например someString.Substring(someString.IndexOf("@"),10) , тогда вы получите следующие десять символов, начиная с того места, где в вашей строке был найден символ «@».

Имейте в виду, что вам всегда нужно будет обрабатывать сценарии, в которых IndexOf будет возвращено -1, если он не найдет искомую строку, поэтому вашему коду придется обрабатывать эту возможность.

Комментарии:

1. Это было полезно. Так что, если Dim распределяется как String = Лос-Анджелес. В функции indexOf. Могу ли я закодировать это: Если мой пример. Текст = смещение. Тогда indexOf(0,11). Было бы правильно, если бы я пытался искать Лос-Анджелес в качестве условия для применения скидки, например?

2. Если бы вы пытались выполнить поиск Los Angeles , вам нужно MyExample.Text.IndexOf("Los Angeles") было бы, чтобы результат этого был больше -1, тогда вы бы знали MyExample , что строка содержит текст «Лос-Анджелес». Имейте в виду, что этот пример чувствителен к регистру.

Ответ №2:

Поскольку это вопрос домашнего задания, я отвечу вопросом или несколькими:

  • Как бы вы обычно вводили полный адрес в текстовое поле?
  • Как каждая часть адреса будет отличаться от другой?
  • Как только вы поймете, как это можно сделать, подумайте IndexOf еще раз.