2010-09-24 3 views
0

Il s'agit de l'éditeur de code Notepad ++.Notepad ++ Je cherche une expression rationnelle pour sélectionner toutes les occurrences de 'href = "' qui ne correspondent pas 'href =" javascript'

Je suis à la recherche d'une expression régulière qui va résoudre le problème suivant:

J'ai un ensemble de fichiers html. J'ai besoin de trouver tous les liens qui ne sont pas des liens vers des fonctions javascript. Si je recherche la chaîne 'href="', j'obtiens 342 résultats et si je recherche 'href="javascript', j'obtiens 301 résultats. J'aimerais voir les 41 éléments qui ne sont que dans le premier set. Ce sont tous les liens qui ne sont pas des appels de fonction javascript.

Je serais reconnaissant si quelqu'un plus familier avec les expressions régulières que je suis actuellement pourrait m'aider sur celui-ci.

+0

Dans le cas qui était clair que je voudrais appliquer l'expression régulière dans notepad ++ de la fenêtre de recherche. – dude

Répondre

1

Je ne sais pas quel type de moteur RegExp est utilisé dans Notepad ++, mais l'expression régulière étendue ressemblerait à ceci:

href="(?:(?!javascript).) 
+0

il ne semble pas y avoir un '?' dans notepad ++ – dude

+0

J'ai regardé ici: http://sourceforge.net/apps/mediawiki/notepad-plus/index.php?title=Regular_Expressions – dude

+0

la regexp: href = "(javascript) trouve tous les appels de fonction javascript mais je n'ai pas réussi à annuler le (javascript) jusqu'à présent – dude

2

Cela correspondra urls qui ne commencent pas par « j », ce qui a probablement travaillera pour vous.

href="[^j] 
+0

merci Cela a fonctionné.Il aurait exclu tout lien relatif commençant par un 'j' mais puisque je sais que je cherchais 41 (à partir des recherches décrites ci-dessus), je sais que je les ai tous. . – dude

0

PowerGrep w/RegexBuddy - j'utiliser notepad ++ et PowerGrep

Questions connexes