Дополнительная проверка входных данных Java для строк

Шаги, которые работали на меня: 1. Отсоедините телефон от USB-кабеля 2. Отмените USB-отладку на телефоне 3. Перезагрузите устройство. 4. Подключите устройство. Наиболее важной частью была перезагрузка устройства. Не работал без него.

1
задан Nicholas K 5 March 2019 в 11:53
поделиться

4 ответа

Вы можете использовать запускается с ()

String city = "London";
if (city.startsWith("Lon")) {
    // do something
}
0
ответ дан Nicholas K 5 March 2019 в 11:53
поделиться

Также, если вам нужно проверить некоторую подстроку, вы можете использовать метод contains:

Menu.answer1 = "London";
Menu.answer1.contains("ondo"); // true
0
ответ дан Ruslan 5 March 2019 в 11:53
поделиться

Вы можете использовать (case-insensitive) регулярные выражения, чтобы сделать то же самое, например:

(?)Lon[a-z]{0,3}, где

  • (?) = Нечувствительность к регистру
  • Lon = начальные 3 символа
  • [az] {0,3} = любое количество алфавитов от 0 до 3

Вот пример:

String regex = "(?)Lon[a-z]{0,3}";
System.out.println("London".matches(regex));
System.out.println("Lond".matches(regex));
System.out.println("Lon".matches(regex));
0
ответ дан Darshan Mehta 5 March 2019 в 11:53
поделиться

Если вы хотите проверить фиксированный набор альтернатив, вы можете использовать список допустимых входных данных, используя contains:

List<String> londonNames = Arrays.asList("London", "Londo", "Lon");
if (londonNames.contains(Menu.answer1)) {
 ...
}
0
ответ дан Luis Iñesta 5 March 2019 в 11:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: