Cela n'est pas possible avec une recherche et un remplacement réguliers . Si vous utilisez Notepad ++ 6, vous pouvez profiter du nouveau moteur regex qui prend en charge PCRE ( source ).
Appuyez sur Ctrl+ Hpour ouvrir la boîte de dialogue Rechercher et remplacer et effectuez l'action suivante:
Find what: \^.*?~
Replace with:
Wrap around: checked
Regular expression: selected
. matches newline: checked
Appuyez maintenant sur Alt+ Apour remplacer toutes les occurrences.
L'expression régulière dans Rechercher ce qui est composé comme suit:
\^
est un littéral ^ .
.*?
est le moins de caractères permettant à l'expression régulière de correspondre.
~
est un littéral ~ .
.*?
modèle a fonctionné pour moi pour rechercher entre les caractères de;
et<
. La recherche est donc TROUVER;.*?<
REMPLACER;
avec les options sélectionnées pourRegular expression
et. matches new line
Tu vas vouloir chercher
\^.*?~
et t'assurer . matches newline est activé:En effet,
^
a une signification particulière, il correspond au début d'une ligne. Ainsi, nous devons y échapper avec une barre oblique inverse\^
.L'écriture
^*
correspondrait à "n'importe quel nombre de début de ligne consécutif"..*
correspond à "n'importe quel caractère", mais par défaut, il ne correspond pas aux sauts de ligne.la source
~
caractères (ou c.-à-d. Plusieurs correspondances), cela correspondra du premier^
jusqu'au dernier~
.*?
ce n'est pas gourmand, c'est paresseux.*?~
ne correspondra jamais à plus d'un~
. Donc c'est d'accord.Essayez d'utiliser cette expression régulière dans la section
\^[^~]*~
Rechercher pour remplacer tout entre ^ et ~ inclusivement.la source
^~
.\^[^~]*~
avec^~
?J'avais une exigence de remplacement similaire entre les caractères de début et de fin. Cela venait de l'email Outlook; des centaines de membres et je voulais juste les noms des personnes avec tout supprimé entre
<
RemoveTextHere>
.Original
Dennis était proche de ma solution
Find what: \^.*?~
mais j'ai dû changer mes caractères littérauxFind what: \<.*?>
puis j'ai dû supprimer la première barre obliqueFind what: <.*?>
.Mis à jour
Find what: <.*?>
; Remplacez vide._
Caractères spéciaux :
*
,$
,\
,+
,^
,(
et)
,[
,]
,{
et}
Les caractères spéciaux sont décrits par Jerry Jeremiah ici /programming/37742519/notepad-wildcard .
la source