Есть ли простой способ получить конкретную c букву с помощью sed, grep или чего-то еще? - PullRequest
0 голосов
/ 05 марта 2020

Я пытаюсь запустить эту команду:

grep '&[a-zA-Z]\w*;' -o myfile.html

и вот результат:

ã
é
ç
ã
é

Но мне нужно вот это, первая буква после '& ':

a
e
c
a
e

Моя цель - заменить все это на первую букву после' & '

Есть ли простой способ сделать это?

Ответы [ 2 ]

1 голос
/ 05 марта 2020

Поместите первую букву в группу захвата, затем используйте обратную ссылку в замене.

sed 's/&\([a-zA-Z]\)[a-zA-Z]*;/\1/g'
0 голосов
/ 05 марта 2020

Если у вас есть gnu-grep, то можно использовать опцию -P (PCRE):

grep -oP '(?<=&)[a-zA-Z](?=\w*;)' file

a
e
c
a
e
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...