Мне нужно регулярное выражение для соответствия с использованием egrep
, который проверяет шаблон, подобный следующему 1_0_5
в длинном запросу string. Если мы рассмотрим шаблон как a_b_c
. Я хочу b быть чем-нибудь кроме 2, 3, 4 и 13.Регулярное выражение для отрицательного Lookahead
-1
A
ответ
0
egrep не поддерживает взгляды.
Вы можете использовать grep -P
(PCRE)
grep -P '^[0-9]*_(?!(2|3|4|13)_)[0-9]*_[0-9]*$' file
или иначе, если выше шаблон находится в середине строки, то используйте границы слов вместо строки запуска/концевые анкеры:
grep -P '\b[0-9]*_(?!(2|3|4|13)_)[0-9]*_[0-9]*\b' file
2
Это должно сделать это:
grep -P '\b[^_]+_(?!(2|3|4|13)_)[^_]+_[^_]+\b' myfile
Если ваши термины являются цифрами, уточните это:
grep -P '\b\d+_(?!(2|3|4|13)_)\d+_\d+\b' myfile
Обратите внимание на -P
флаг, чтобы включить PERL сопоставимость, что позволяет выглядеть aheads
0
Для ясности и простоты:
awk '/a_[^_]+_c/ && !/a_(2|3|4|13)_c/' file
Это помогло бы нам помочь, хотя, если вы вывесили некоторый ввод проб и ожидаемый результат.
Смежные вопросы
- 1. Lookahead регулярное выражение
- 2. Регулярное выражение negative lookahead
- 3. Регулярное выражение - Lookahead
- 4. Регулярное выражение с отрицательным lookahead
- 5. Регулярное выражение Postive Lookahead substring
- 6. Регулярное выражение Условный Lookahead/Lookback?
- 7. Javascript: эквивалентное регулярное выражение для отрицательного lookbehind?
- 8. регулярное выражение - как сделать lookahead pattern
- 9. Python Регулярное выражение Lookahead overhooting pattern
- 10. Регулярное выражение не захватывает lookahead утверждение
- 11. Регулярное выражение Lookahead - идентификация повторяющихся последовательных букв
- 12. Регулярное выражение с lookahead и lookbehind
- 13. Регулярное выражение с положительным lookahead/lookbehind
- 14. Требуется полное исправление ошибки на основе отрицательного Lookahead
- 15. Поддерживает ли регулярное выражение регулярное выражение?
- 16. R: регулярное выражение для lookahead (что не связано? =)
- 17. Регулярное выражение для сопоставления нескольких POSTIVE LOOKAHEAD группы
- 18. Java - регулярное выражение для обычного положительного отрицательного числа
- 19. выберите строку с помощью отрицательного lookahead?
- 20. Javascript регулярное выражение с lookahead и lookbehind ошибочно?
- 21. Регулярное выражение регулярных выражений с ограничением символов (без lookahead)
- 22. Регулярное выражение Lookahead с необязательным фрагментом URL-адреса
- 23. Добавить исключения в сложное регулярное выражение (lookahead и lookbehind)
- 24. Python регулярное выражение: + Lookahead касательно предшествующего текста с CharacterSet
- 25. Lookahead не работает в «не следует» регулярное выражение
- 26. Lookahead регулярное выражение в Рубине возвращает `nil` на IRB
- 27. Регулярное выражение lookahead в powershell ведет себя странно
- 28. Regex LOOKAHEAD
- 29. Регулярное регулярное выражение для swiftlint
- 30. Lookahead путаница
Это исключало бы a_22_c - я думаю, что негативный взгляд впереди должен включать окончание подчеркивания. Он также будет соответствовать «a_2_c a_x_c», который будет включать в себя нежелательный хит – Bohemian
@Bohemian: Спасибо, хороший момент, я исправил. – anubhava