Deutsch   English   Français   Italiano  
<6596e54a$0$8226$426a74cc@news.free.fr>

View for Bookmarking (what is this?)
Look up another Usenet article

Path: ...!feeds.phibee-telecom.net!2.eu.feeder.erje.net!feeder.erje.net!proxad.net!feeder1-2.proxad.net!cleanfeed1-a.proxad.net!nnrp4-1.free.fr!not-for-mail
From: yves <yves@free.invalid>
Subject: Re: grep - remplacer une succession de pipes
Newsgroups: fr.comp.lang.regexp
References: <65958156$0$7754$426a74cc@news.free.fr>
	<un46fq$aau$1@cabale.usenet-fr.net> <un47h8$aju$1@cabale.usenet-fr.net>
	<un482b$ant$1@cabale.usenet-fr.net> <6596a802$0$7532$426a74cc@news.free.fr>
	<un6jfp$1c1k$1@cabale.usenet-fr.net>
MIME-Version: 1.0
User-Agent: Pan/0.149 (Bellevue; 4c157ba)
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Date: 04 Jan 2024 17:05:14 GMT
Lines: 49
Message-ID: <6596e54a$0$8226$426a74cc@news.free.fr>
Organization: Guest of ProXad - France
NNTP-Posting-Date: 04 Jan 2024 18:05:14 CET
NNTP-Posting-Host: 37.67.154.156
X-Trace: 1704387914 news-2.free.fr 8226 37.67.154.156:63162
X-Complaints-To: abuse@proxad.net
Bytes: 2561

Le Thu, 4 Jan 2024 16:39:36 +0100, Olivier Miakinen a écrit:

> Le 04/01/2024 à 13:43, yves a écrit :

>> #+BEGIN_SRC sh
>> grep "^[^b|^A-Z]\w\w\w[^eéèëê]$" /usr/share/dict/french
>> #+END_SRC
> Je ne comprends pas à quoi sert [^b|^A-Z]. Cette syntaxe dit que tu veux
> un caractère qui ne soit :
> - ni un 'b'
> - ni un '|'
> - ni un '^'
> - ni une lettre majuscule entre A et Z

> Or dans /usr/share/dict/french il y a bien des mots avec un 'b', mais
> aucun avec un '|', ni avec un '^', ni avec une lettre majuscule. Ainsi,
> l'expression serait exactement la même si tu écrivais juste [^b]

Oui, effectivement, il n'y a pas de mots qui commencent avec une
majuscule dans /usr/share/dict/french.

C'est parce qu'il y a aussi des wordles en anglais, et que dans le 
dictionnaire
/usr/share/dict/american-english, il y a des mots qui commencent par des 
majuscules.

#+BEGIN_SRC sh 
#grep "^[A-Z]\w\w\w\w$" /usr/share/dict/american-english |grep -vc [toinp]
grep "^[^a|^A-Z]\w\w\w\w$" /usr/share/dict/american-english |head
#+END_SRC

En fait , par exemple :
grep "^[^a|^A-Z]\w\w\w\w$"

ce que (je crois que) dit la ligne [^a|^A-Z] , c'est que je veux un 
caractère:
qui ne soit:
- ni un 'a'
- ni une majuscule entre A et Z

grep "^[^a|^A-Z]\w\w\w\w$" /usr/share/dict/american-english |head

La ligne complète ci-dessus donne les dix premiers mots qui ne
commence ni par a ni par une majuscule entre A et Z, et qui ont 5
lettres dans le /usr/share/dict/american-english

@+
-- 
Yves