2015-05-23 3 views
0

Я сталкиваюсь с этой проблемой на Java. Я хочу найти в списке строк все строки, соответствующие структуры , составленному следующим образом:Как найти все строки в списке, которые соответствуют определенной структуре?

например: «? Еа ч» «?»

где может быть любым символом и может быть где угодно в строке.

Я пробовал использовать .contains, но я не знаю, что мне делать, чтобы соответствовать всем символам для "?"

Должен ли я сделать петлю и заменить "?" с каждым доступным символом и искать список, или есть лучший способ сделать это? Спасибо!

+0

Вы разрешили использовать регулярное выражение? – dragon66

+1

Вот что ['регулярные выражения'] (http://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html) для. –

+0

@ dragon66 Да, я –

ответ

1

Код:

List<String> strings = Arrays.asList(
      "test123", 
      "1ea1ch", 
      "dazch", 
      "6ea5ch"); 

    strings.stream().filter(s -> s.matches(".ea.ch")).forEach(System.out::println); 

Выход:

1ea1ch

6ea5ch

Смежные вопросы