#r #regex
Вопрос:
При анализе журналов вам часто нужно найти все строки, содержащие какое-либо конкретное слово в файле журнала. Проблема в том, что при обычном поиске в notepad он возвращает одну и ту же строку несколько раз, если она содержит это слово в разных позициях. Чтобы облегчить это, я переключаюсь на поиск регулярных выражений и использую следующее выражение
(.*K)(text)
Где .*
соответствует полной строке, K
отбрасывает выделение, а затем (текст) соответствует последнему вхождению текста в строке.
Этот метод выглядит некрасиво и не очень быстр. Есть ли лучший способ сделать это?
Ответ №1:
Чтобы соответствовать только первому вхождению, вам придется искать many
символы с начала строки, отказаться от этого поиска и искать text
то, что вы ищете.
Следующее регулярное выражение делает то же самое.
Регулярное выражение: (^.*?)Ktrue
true
это мой текст здесь.
Фиктивный Ввод
Log date 12/12/2015
Sr No desc amount status
1 true $10000 true
2 true $10000 false
3 true $10000 true
4 true $10000 false
5 true $10000 true
Демонстрационная версия Notepad
Комментарии:
1. Очень интересный способ объяснить, как создается этот прикрепленный Gif? какой-нибудь специальный инструмент?
2. Это отличный ответ!