Est-il possible, en utilisant grep, de rechercher des instances de John Smith
mais d'exclure des instances de Mr John Smith
?
10
Cela pourrait être résolu en utilisant une expression régulière avec un lookbehind négatif (qui est supporté expérimentalement grep
comme le souligne le commentaire d'arranger):
$ grep -P '(?<!Mr )John Smith' file
Puisque le support est juste expérimental, vous voudrez peut-être utiliser à la perl
place:
$ perl -nle 'print if /(?<!Mr )John Smith/' file
echo $string | grep -P '(?<!Mr )John Smith'
.Vous pouvez exécuter
la source
John Smith Mr John Smith John Smith
Pour utiliser des expressions régulières, utilisez ^ et $
^ correspond au début $ correspond à la fin.
La syntaxe variera en fonction de ce que vous recherchez dans quel fichier.
Vous pouvez utiliser des expressions régulières avec sed, grep, awk ....
Exemple
la source