extension *.abc en "Unix-style Regular Expression"

extension *.abc en "Unix-style Regular Expression" - Codes et scripts - Linux et OS Alternatifs

Marsh Posté le 26-08-2015 à 20:56:47    

bonjour,
 
Pour un filtre d'exclusion dans un outil de sauvegarde je dois saisir une expression "Unix-style Regular Expression". Sous windows j'aurais mis *.abc
Pour exclure un dossier particulier contenant un point j'ai déjà un exemple qui fonctionne où il faut utiliser l'expression ^exemple.ex$ pour exclure le dossier "exemple.ex", est-ce que pour le cas d'un fichier avec wildcard je peux mettre ^*.abc$   ?
Je ne sais pas ce que représentent ces ^ et $

Reply

Marsh Posté le 26-08-2015 à 20:56:47   

Reply

Marsh Posté le 26-08-2015 à 22:11:47    

^ est une negation.
donc ^exemple.ex signifie ce qui n'est pas un match avec exemple.ex
$ est pour la fin de ligne.
 
Tu peux utiliser tes expressions dans un shell unix et voir si elles passent, ca te permettrait de les tester simplement.


---------------
"Phildar t'es vraiment une pute pas finie toi! Et Manu le gros porc arrete de t'marrer!"
Reply

Marsh Posté le 27-08-2015 à 16:33:17    

Citation :

^ est une negation.

entre crochets, oui.
mais, ici, il s'agit du début de la ligne.
c'est à dire que la regex doit correspondre "exactement" à toute la ligne lue.

 

ainsi, '^b.*a$' (commence par un 'b' et finit par un 'a', avec n'importe quoi, ou rien, entre les deux) correspondra à 'blabla'
alors que 'b.*a$' correspondra, entre autre, à 'abracadabra'

Message cité 1 fois
Message édité par Profil supprimé le 27-08-2015 à 16:53:05
Reply

Marsh Posté le 27-08-2015 à 19:58:45    

Merci de vos réponses.
J'ai vu un récap ici http://www.shellunix.com/regexp.html
Je comprend beaucoup mieux.


Message édité par xolth le 27-08-2015 à 23:55:27
Reply

Marsh Posté le 27-08-2015 à 20:07:37    

il ne s'agit alors pas d'une regex (cf. man 7 regex), mais de globs (développement des chemins, cf. man bash)

Reply

Marsh Posté le 27-08-2015 à 23:08:36    


Hmmm quand je tente sous zsh ca me fait bien une negation pourtant  :??:


---------------
"Phildar t'es vraiment une pute pas finie toi! Et Manu le gros porc arrete de t'marrer!"
Reply

Marsh Posté le 27-08-2015 à 23:24:30    

je n'utilise pas zsh, que, cependant, je sais être très puissant.
 
montre-nous comment tu fais, s'il te plaît.
 
ah, je crois avoir trouvé, et il ne s'agit pas de regex, mais de globs (propre à zsh) :
man zsh

Citation :

^x
 
    (Requires EXTENDED_GLOB to be set.) Matches anything except the pattern x. This has a higher precedence than ‘/’, so ‘^foo/bar’ will search directories in ‘.’ except ‘./foo’ for a file named ‘bar’.


Message édité par Profil supprimé le 27-08-2015 à 23:29:46
Reply

Marsh Posté le 28-08-2015 à 00:35:43    

Ah bah voila :jap:


---------------
"Phildar t'es vraiment une pute pas finie toi! Et Manu le gros porc arrete de t'marrer!"
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed