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