web-dev-qa-db-fra.com

Rechercher des lignes ne commençant pas par "dans Notepad ++

J'essaie de vérifier un fichier CSV contenant des problèmes de saut de ligne.

Je veux trouver toutes les lignes ne commençant pas par un ".

J'essaie avec /!^"/gim mais la négation ! ne fonctionne pas.

Comment puis-je annuler correctement /^"/gim?

28
DanFromGermany

Dans regex, le ! ne signifie pas négation; au lieu de cela, vous voulez annuler un jeu de caractères avec [^"]. Les crochets, [], désignent un jeu de caractères et s’il commence par un ^, cela signifie "pas ce jeu de caractères".

Donc, si vous voulez faire correspondre des éléments qui ne sont pas des guillemets doubles, utilisez [^"]; si vous ne voulez pas faire correspondre les guillemets, vous pouvez utiliser [^"'], etc.

Avec Notepad ++, vous devriez pouvoir effectuer les recherches suivantes pour trouver des lignes qui ne commencent pas par le caractère ":

^[^"]

Si vous souhaitez mettre en évidence la ligne complète, utilisez:

^[^"].*
46
newfurniturey

Dans Notepad ++, vous pouvez utiliser le très utile lookahead négatif

Dans votre cas, vous pouvez essayer ce qui suit:

^(?!")

Si vous souhaitez faire correspondre les lignes globales, ajoutez .+ ou .{1,7} ou n’importe quoi, par exemple:

^(?!").*

correspondra également aux lignes vides.

Partie explication

^ début de ligne

(?!regexp) partie lookahead négatif: cela signifie que si le regexp correspond à, le résultat sera affiché pas

19
Boop

Étape 1 - Faites correspondre les lignes. Rechercher dialogue> Marquer onglet, vous pouvez marquer les lignes correspondant aux marques.

Étape 2 - Supprimer les lignes marquées d'un signet OR Supprimer les lignes non marquées d'un signet. Rechercher> Signet> Supprimer les lignes non marquées ou Supprimer les lignes marquées d'un signet

1
Gaurav