Wie finde ich Text zwischen zwei Zeichen?

607
mill75

Ich habe eine Notepad ++ - Datei mit vielen Zeilen. Wie finde ich einen bestimmten Text, wenn ich weiß, dass zwischen @ und @ mit G beginnt, mit R endet und 18 Zeichen lang ist?

Zum Beispiel möchte ich Folgendes finden: G8G8v8AGGtVGR8VRXR

davon: kjfoih6fn @ PVIJF928G5 @ G8G8v8AGGtVGR8VRXR @ VKJEOIHGQP5V4R4frg97etrg @ 53qvhF

Die Aktenakte ist viel größer.

0

2 Antworten auf die Frage

0
S E

Aktivieren Sie das Kontrollkästchen für reguläre Ausdrücke im Suchen / Ersetzen-Dialog (STRG + H) und verwenden Sie einen regulären Ausdruck, um den gewünschten Suchbegriffen zu entsprechen

@G[^@]R@ 
Wo ist der Test für genau 18 Zeichen? DavidPostill vor 8 Jahren 0
ah, habe den Teil nicht gesehen, den ich jetzt in der Bearbeitung korrigiert habe S E vor 8 Jahren 0
0
Máté Juhász

Abhängig von Ihrem Fall können Sie mehr oder weniger strenge reguläre Ausdrücke schreiben (drücken Sie STRG + F in Notepad ++, und aktivieren Sie das Kontrollkästchen für reguläre Ausdrücke):

  • (?<=@)G.R(?=@)- - findet 18 Zeichen (G + 16 + R) zwischen zwei, @beginnend mit G bis R; Ergebnis wird @s ausschließen
  • @G.R@- dasselbe mit @s
  • @G.*R@ sucht einfach nach dem Text zwischen @G und @R, ohne die Länge zu berücksichtigen
  • ...
das . da sollte [^ @] sein, sonst würde der Ausdruck ungefähr so ​​aussehen wie @ GHKJ @ JKNNDK @ NKJNJR @ S E vor 8 Jahren 0
@SE Ich sehe nirgendwo beschrieben, dass es kein @ enthalten kann Máté Juhász vor 8 Jahren 0
technisch nicht, aber es ist in der Problemdefinition implizit S E vor 8 Jahren 0
Thanx hat super funktioniert. mill75 vor 8 Jahren 0