Je suis nouveau avec regexp et je pense que c'est un problème de débutant pour obtenir la sortie.
Mon regexp pour Chiffres / chiffres AB (CD) est: [A-Z]+[^a-zA-Z0-9][A-Z]+[^a-zA-Z0-9] [0-9]+[^a-zA-Z0-9][0-9]+
La commande Grep est: grep "regexp" xyz.txt
il n'y a pas de sortie vers la commande ci-dessus, mais quand j'utilise l'éditeur sublime pour la même regex, j'obtiens le résultat souhaité. J'ai essayé beaucoup de tentatives avec la commande grep, le seul moment [0-9]+[^a-zA-Z0-9][0-9]+
partie de regex parce qu'il y a un espace entre les deux mais toujours les résultats n'étaient pas souhaités. A essayé grep -e
et grep --regexp=
aussi, pas de résultats.
Quelqu'un peut-il me dire où je me suis trompé ou la syntaxe correcte pour cette commande. Merci beaucoup.
Modifier:
Les données ressemblent à ceci:
AB(C.D.) nnnnn/nnnnnn
A.B(C.D.) nnnnnn/nnnnn
A.B.(CD) nnnnn/nnnnnn
AB(CD) nnnnn/nnnnnn
AAB(CD) nnnnn/nnnnnn
....
....
further P & C
Je cherchais uniquement AB (CD) nnnn / nnnnnn. Voudrais vraiment apprendre la bonne expression.
Réponses:
1 pour la réponse № 1Utilisez grep -E car il bascule grep dans un mode spécial afin que l'expression soit évaluée en tant qu'ERE (Extended Regular Expression) par opposition à sa correspondance de modèle normale.