grep для извлечения уникальных фраз с заглавной буквы

What are the 5 levels repo source? what's their function? why should differentiate them?

Позорно скопировано с centoshelp.org , [невозможно цитировать все содержимое]

  • Базовый репозиторий:[Base]— Пакеты, из которых состоит Centos, выпущенные на ISO. Он включен по умолчанию

  • Репозиторий обновлений:[Updates]– Обновлены пакеты до [Base], выпущенные после ISO-образов Centos. Это будет Security, BugFix или Enhancements to [Base] software. Он включен по умолчанию

  • Дополнительно:[Extras]— Пакеты, созданные и поддерживаемые разработчиками Centos, которые добавляют функциональность к основному дистрибутиву. Эти пакеты прошли некоторое базовое тестирование, должны достаточно точно отслеживать версии исходных выпусков и никогда не заменят какой-либо пакет основного дистрибутива. Он включен по умолчанию

  • Репозиторий Centosplus:[Centosplus]— Пакеты, предоставленные разработчиками Centos и пользователями. Эти пакеты могут заменить пакеты rpm, включенные в основной дистрибутив. Вы должны понимать последствия включения и использования пакетов из этого репозитория. По умолчанию отключен

  • Репозиторий вкладов:[Contrib]— Пакеты, предоставленные пользователями Centos, которые не пересекаются ни с одним из основных пакетов распространения. Эти пакеты не тестировались разработчиками Centos и могут не очень точно отслеживать выпуски основной ветки разработки. По умолчанию отключен

Why there is no contrib, if there is no it, what should I config for it, is it matter if I do not config?

Как видно из ответа выше, он не включен по умолчанию, потому что пакеты в этом репозитории не тестировались разработчиками CentOS. Так что вы можете использовать их на свой страх и риск.Вы можете включить его, просто изменив 0на 1вместо enabled=0.

-2
01.10.2021, 22:45
1 ответ

Использование Raku (, ранее известного как Perl _6)

raku -e '.subst(",", " and ", :g).subst(".", " ", :g).comb(/ <( [ <:Lu> <:Ll>+ \h+ ]+ )> <:Ll>* /).map(*.trim-trailing).Bag.antipairs.join("\n").say for lines();'

Пример ввода:

Harvard archaeologists in Mexico also participated in the International School of American Archaeology and Ethnology in Mexico City with scholars from Mexico, Prussia and the United States.

Пример вывода (окончательный):

1   Ethnology
1   Prussia
2   Mexico
1   American Archaeology
1   Harvard
1   Mexico City
1   International School
1   United States

Интересный вопрос, и я решил решить его с помощью Raku, потому что считается, что он имеет довольно продвинутый механизм регулярных выражений (, более совершенный, чем PCRE, согласно ссылкам внизу ).

Начнем с того, что разобьем код Раку на три основных раздела. Раздел combиспользует средство сопоставления регулярных выражений для разбиения ввода текста на нужные элементы. Многие из символов могут быть вам уже знакомы (или знакомы по концепции ). Например, маркерами захвата в Raku являются <(…)>. Только раздел combвозвращает 8/9 ожидаемых значений, хотя одно возвращается лишь частично.

raku -e '.comb(/ <( [ <:Lu> <:Ll>+ \h+ ]+ )> <:Ll>* /).join("\n").say for lines();'

Пример вывода (попытка #1):

Harvard 
Mexico 
International School 
American Archaeology 
Ethnology 
Mexico City 
Prussia 
United

Мы сразу видим, что нужно что-то делать с пунктуацией, потому что значение Mexico,и частичное -значение States.остаются позади. Вторая попытка:

raku -e '.subst(",", " and ", :g).subst(".", " ", :g).comb(/ <( [ <:Lu> <:Ll>+ \h+ ]+ )> <:Ll>* /).join("\n").say for lines();'

Пример вывода (попытка #2):

Harvard 
Mexico 
International School 
American Archaeology 
Ethnology 
Mexico City 
Mexico 
Prussia 
United States

Выше возвращаются 9/9 ожидаемых значений. В конце концов я решил заменить ,запятых на andи заменить .точек на пробелов. (Вам придется решить, как лучше всего поступить со своими сообщениями ).

Для достижения окончательных результатов наверху в код были вставлены вызовы .map(*.trim-trailing).Bag.antipairs, которые дают желаемый результат.

https://slides.yowconference.com/yowwest2015/Conway-EverythingYouKnowAboutRegexesIsWrong.pdf
https://youtu.be/ubvSjW6Nyqk
https://raku.org

0
05.10.2021, 19:45

Теги

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