есть строка "kldm"
и в ней нужно проверить, есть ли буквы из "l,p,o,k,j,s,h,r"
, думаю реализовать .contains
, но как сделать, чтобы он не 1 букву искал, и не слово, а "l,p,o,k,j,s,h,r"
- все эти буквы.
С помощью регулярного выражения:
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.util.regex.PatternSyntaxException;
public class RegexDemo {
public static void main(String[] args) {
boolean notFound = true;
// сюда вставить строку в которой будем искать
String input = "kldm";
// сюда вставить регулярное выражение
String regex = "[lpokjshr]";
try {
System.out.println("Проверяемая строка: " + input);
System.out.println("Регулярное выражение: " + regex);
Pattern p = Pattern.compile(regex);
Matcher m = p.matcher(input);
while (m.find()) {
notFound = false;
System.out.println("Найдено [" + m.group() + "] начало в "
+ (m.start() + 1) + " позиции и конец в " + m.end() + " позиции.");
}
} catch (PatternSyntaxException pse) {
System.err.println("Bad regex: " + pse.getMessage());
System.err.println("Description: " + pse.getDescription());
System.err.println("Index: " + pse.getIndex());
System.err.println("Incorrect pattern: " + pse.getPattern());
}
if (notFound) System.out.println("Ничего не найдено!!!");
}
}
Результат:
Проверяемая строка: kldm
Регулярное выражение: [lpokjshr]
Найдено [k] начало в 1 позиции и конец в 1 позиции.
Найдено [l] начало в 2 позиции и конец в 2 позиции.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Необходимо реализовать консольную программу, которая бы фильтровала поток текстовой информации подаваемой на вход и на выходе показывала...
Необходимо реализовать метод, который будет рассчитывать среднюю зарплату среди всех сотрудников; выводить список подразделений и среднюю...
Мой вопрос написал ниже в комментах программы с достаточно подробным описанием причины возникновения собственно самого вопроса
корректно будет использовать оператор "==" для сравнения двух символов из двух массивов? Не адреса в памята а именно совпадение знаков(если...