Как установить GCC без yum на CentOS 7?

Ни \b, ни \Bне являются символами. Оба являются шаблонами нулевой ширины -, которые соответствуют между символами .

Шаблон \bсоответствует границе слова, то есть между символом, который является «символом слова», и символом, который не является «символом слова».

Шаблон \Bсоответствует границе слова, отличной от -, т. е. между двумя символами, которые либо являются «символами слова», либо нет.

Шаблон [^\b]соответствует одному символу . Вот почему pearпреобразуется в pu, вы заменяетеear(на aи окружающие символы ).

В GNU sed[^\b]соответствует символу, который не является \или b.

Не существует способа использовать класс символов для замены использования \B, о котором я знаю.

Шаблоны \bи \Bподдерживаются GNU sed. И GNU sed, и BSD sedтакже имеют \<и \>для явного сопоставления в начале и конце слова, а BSD sedдополнительно поддерживает шаблоны POSIX [[:<:]]и [[:>:]](, но GNU sedнет ). Шаблоны POSIX нельзя отменить([^[:>:]]не работает ).

Чтобы получить аналогичный эффект без использования \B, вы можете использовать что-то вроде

$ echo 'apple pear melon banana cherry papaya' | sed 's/\([[:alnum:]]\)a\([[:alnum:]]\)/\1u\2/g'
apple peur melon bunana cherry pupaya

То есть совпадение с буквенно-цифровым символом по обе стороны от a,а затем включить эти два фланговых символа в замену. Обратите внимание, что поскольку замена происходит только для неперекрывающихся совпадений -, это не будет правильной заменой aв строке, содержащей несколько последовательных a(или aв каждой второй позиции. ). Посмотрите, как из-за этого bananaне выходит как bununa.

Чтобы разобраться с этим, вы можете ввести цикл в программу sed:

sed -e :top -e 's/\([[:alnum:]]\)a\([[:alnum:]]\)/\1u\2/g' -e ttop

Это выполняет замену во входной строке столько раз, сколько необходимо, пока не будут обработаны все совпадения перекрывающихся шаблонов.

0
21.05.2020, 16:07
1 ответ

Во-первых, я думаю, CentOS связан с python, поэтому просто проверьте, где находится python (which python), и создайте ссылку для /usr/bin/python2.7

Для ручной установки вам необходимо загрузить исходный код и установить его вручную из tar-шара.

Эта ссылка поможет вам:

Способы установки gcc в CentOS 7

0
18.03.2021, 23:33

Теги

Похожие вопросы