Вопросы с тегом «regular-expression»

18
повторение awk {n} не работает

Я пытаюсь напечатать строки, используя символ повторения {n}, но это не работает. За. например, я хочу напечатать все строки длиной 4 символа awk '/^.{4}$/' test_data Приведенный выше код не печатает это. Как это исправить, чтобы я мог использовать символ повторения? Я знаю альтернативу, как awk...

17
Как «grep» для длины строки * не * в заданном диапазоне?

ПРИМЕЧАНИЕ: этот вопрос является дополнением к этому Q & A: Как «grep» для длины линии в заданном диапазоне? Как мы можем выполнить поиск строк, которые содержат менее 8 или более 63 символов, ни одна из которых не содержит более восьми и менее 63 символов? Таким образом, некоторые приемлемые...

17
Поиск текста между двумя конкретными символами или строками

Скажем, у меня есть такие строки: *[234]* *[23]* *[1453]* где *представляет любую строку (кроме строки в форме [number]). Как я могу проанализировать эти строки с помощью утилиты командной строки и извлечь число в скобках? В более общем смысле , какой из этих инструментов cut, sed, grepили было...

17
Программное обеспечение для визуального построения регулярных выражений?

Мне часто приходится создавать регулярные выражения для использования в сценариях (в основном при использовании в них sed), однако, я нахожу, что иногда регулярные выражения становятся очень сложными и трудными для понимания и редактирования. Существует ли какое-либо программное обеспечение,...

16
Подстановка первого вхождения шаблона в строке для всех строк в файле с помощью sed

Можно ли это сделать в один лайнер? У меня есть вывод, как это: "First line" - Description " Second line" - Description "Third line" - Description " Fourth line" - Description Этот вход генерируется автоматически. Я хочу заменить первое вхождение "(кавычка + пробел) на "(кавычка) для каждой строки....

16
Как использовать регулярное выражение в качестве разделителя полей в awk?

Я пытаюсь использовать регулярное выражение в качестве разделителя полей в awk. Из моего чтения это кажется возможным, но я не могу понять правильный синтаксис. rpm -qa | awk '{ 'FS == [0-9]' ; print $1 }' awk: cmd. line:1: { FS awk: cmd. line:1: ^ unexpected newline or end of string Мысли? Цель,...

16
синтаксис ls --hide = и ls --ignore =

ls --hideи ls --ignoreпредоставляет возможность опускать файлы, определенные с помощью регулярных выражений, установленных после --ignore=детали. Последний гарантирует, что эта опция не отключена через -a, -A. Команда manи infoстраница упоминают регулярные выражения. Вопрос : Какие подстановочные...

16
Разделение текстовых файлов на основе регулярного выражения

У меня есть текстовый файл, который я хочу разделить на 64 неравные части, в соответствии с 64 гексаграммами И Цзин. Поскольку отрывок для каждой гексаграммы начинается с некоторой цифры (цифр), точки и двух новых строк, регулярное выражение должно быть довольно простым для написания. Но как на...

16
grep: отображать имя файла один раз, затем отображать контекст с номерами строк

В нашем исходном коде разбросаны коды ошибок. Найти их легко с помощью grep, но мне бы хотелось, find_codeчтобы я выполнял функцию bash (например, find_code ####), которая будет обеспечивать вывод в следующем виде: /home/user/path/to/source.c 85 imagine this is code 86 this is more code 87 { 88...

16
Использование grep с флагом --exclude-dir для исключения нескольких каталогов

Я ищу в приложении Ruby on Rails слово, используемое grepв OSX, и я хотел бы исключить каталоги, которые соответствуют определенному шаблону. Я использую следующую команду: grep -inRw -E 'direct' . --exclude-dir -E 'git|log|asset' Эта команда не делает то, что я думал, что будет делать. Вот как я...

16
vim: использовать строку из поиска в команде замены

Я часто использую /команду поиска vim для проверки моих регулярных выражений (просто чтобы увидеть, что они соответствуют). После этого я обычно использую команду :%sreplace, где я использую это регулярное выражение из поиска в качестве строки, подлежащей замене, например, сначала я ищу такую...

15
Поддерживает ли bash обратные ссылки в расширении параметров?

У меня есть имя переменной , descrкоторая может содержать строку Blah: -> r1-ae0-2 / [123], -> s7-Gi0-0-1:1-US / Fooи т.д. Я хочу , чтобы получить -> r1-ae0-2, -> s7-Gi0-0-1:1-USчасть из строки. На данный момент я использую descr=$(grep -oP '\->\s*\S+' <<< "$descr"для этого....

15
Совпадение слова, содержащего символы за пределами a-zA-Z

Чтобы соответствовать слову можно использовать \v(\w+) Из справки vim :h \w: \ w символ слова: [0-9A-Za-z_] Это работает точно так, как описано в руководстве. Тем не менее, я хочу сопоставить слова, которые содержат символы за пределами a-z, например, prästgården . Сопоставление регулярного...

15
Как определить конец строки с помощью sed

Я ищу способ выполнить замену только тогда, когда последний символ является новой строкой, используя sed . Например: lettersAtEndOfLine заменено, но это не так: lettersWithCharacterAfter& Так sedкак не работает с переводами строки, это не так просто, как $ sed -E "s/[a-zA-Z]*\n/replace/"...

15
sed one-liner, чтобы удалить все между парой скобок?

Я работаю с текстом, который в скобках [] заполнен вещами, которые мне не нужны. Поскольку я могу удалить скобки самостоятельно, мне не нужен однострочный, чтобы сделать это для меня, но мне нужен однострочный, который удалит все между ними. А как насчет скобок () вместо...

14
Как уменьшить жадность регулярного выражения в AWK?

Я хочу сделать сопоставление не жадных шаблонов (регулярных выражений) в awk. Вот пример: echo "@article{gjn, Author = {Grzegorz J. Nalepa}, " | awk '{ sub(/@.*,/,""); print }' Можно ли написать регулярное выражение, которое выбирает более короткую строку? @article{gjn, вместо этой длинной строки?...

14
команда find с квантификатором регулярных выражений, например {1,2}

Я пытался создать командную строку find, которая найдет все файлы с номерами 1-99, но исключит все остальные. например, я хочу найти myfile1 myfile99, но не myfile456 и не myfilebackup Регулярное выражение, о котором я думаю, - myfile[1-9]{1,2}но я не могу заставить это работать с find. find ....