2014-11-22 3 views
0

Этот вопрос немного запутан. Я хочу совместить все между вещами, которые ищу, включая строку, которую я использую для поиска. Например, у меня есть этот список:Регулярное выражение для соответствия всем в начале и в конце

  1. Это является предложение
  2. Это подделка
  3. Это может быть предложение

Я хочу, чтобы соответствовать всей линии. Для этого случая я хочу, чтобы он соответствовал этому и предложению, поэтому он возвращает это предложение, и это может быть предложение. Я пробовал что-то вроде этого: Regex Match all characters between two strings. Это не работает, потому что он не принимает исходные ключевые слова. Это займет только согласованную строку BETWEEN ключевых слов.

Как это можно сделать?

Спасибо!

ответ

0

Похоже, выражение "This.*sentence" предоставит вам все. То есть, он соответствует This, затем все символы, затем sentence. Если отсутствует This или sentence, то он не будет соответствовать.

+0

Кажется, что он не работает в соответствии с регулярным выражением. http://regexr.com/39uu9 – ayao1337

+0

@ irule311: Мой плохой. Мне не нужно было избегать этого периода. Без него образец работает. –

+0

Спасибо, что сработали! – ayao1337

0

^Это. * Предложение $

Я думаю, что это должно сработать.

Если вы хотите извлечь, то вы используете скобки.

The^отмечает начало строки и $ mark the end. ^ Это соответствует этому в начале строки. предложение $ соответствует предложению как последнее слово в конце строки.

+0

Это тоже не работает. http://regexr.com/39uuc – ayao1337

+0

$ echo "Это предложение" | grep^Это. * предложение $ Это предложение $ echo "Это предложениеaa" | grep^Это. * предложение $ $ echo "Это подделка" | grep^Это. * предложение $ $ echo "Это может быть предложение" | grep^Это. * предложение $ Это может быть предложение – Anthony

+0

Что это значит? Я обнаружил, что удаление «$» выполняет эту работу, но только для первой строки. – ayao1337

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