myCSharp.de - DIE C# und .NET Community
Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 
 | Suche | FAQ

» Hauptmenü
myCSharp.de
» Startseite
» Forum
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Suche
   » Plugin für Firefox
   » Plugin für IE
   » Gadget für Windows
» Regeln
» Wie poste ich richtig?
» Datenschutzerklärung
» wbb-FAQ

Mitglieder
» Liste / Suche
» Stadt / Anleitung dazu
» Wer ist wo online?

Angebote
» ASP.NET Webspace
» Bücher
» Zeitschriften
   » dot.net magazin

Ressourcen
» guide to C#
» openbook: Visual C#
» openbook: OO
» MSDN Webcasts
» Search.Net

Team
» Kontakt
» Übersicht
» Wir über uns
» Impressum

» Unsere MiniCity
MiniCity
» myCSharp.de Diskussionsforum
Du befindest Dich hier: Community-Index » Diskussionsforum » Gemeinschaft » Projekte » On-the-fly Regex-Tester: Regex-Lab
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | Thema zu Favoriten hinzufügen

Seiten (2): « vorherige 1 [2] Antwort erstellen
Zum Ende der Seite springen  

On-the-fly Regex-Tester: Regex-Lab

 
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
TiltonJH TiltonJH ist männlich
myCSharp.de-Mitglied

images/avatars/avatar-3134.png


Dabei seit: 16.09.2006
Beiträge: 87
Entwicklungsumgebung: VS 2010 Pro
Herkunft: Leipzig


TiltonJH ist offline Füge TiltonJH Deiner Kontaktliste hinzu AIM Screenname von TiltonJH: TiltonJH YIM-Screenname von TiltonJH: TiltonJH MSN-Passport-Profil von TiltonJH anzeigen

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hallo herbivore,

die problematik des encoding ist mir schon bekannt, aber mit 850 hast wohl sicher recht. großes Grinsen
es war eigentlich mehr die frage, ob das so gewollt war/ist. Augenzwinkern

ein solches c#-programm gibt es schon, ich werde das wohl gleich hier mal als projekt veröffentlichen. großes Grinsen

hab da aber noch was anderes: in der regexlab.html ist auf zeile 123 ein fehler. da steht: "\<name>" es sollte aber wohl "\k<name>" heißen. verwundert

MfG

TiltonJH
08.12.2009 18:16 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
herbivore
myCSharp.de-Poweruser/ Experte

images/avatars/avatar-2627.gif


Dabei seit: 11.01.2005
Beiträge: 49.341
Entwicklungsumgebung: csc/nmake (nothing is faster)
Herkunft: Berlin

Themenstarter Thema begonnen von herbivore

herbivore ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hallo TiltonJH,

Zitat:
es war eigentlich mehr die frage, ob das so gewollt war/ist.

nein, das war nicht unbedingt gewollt. Wenn ich dran denke, verwende ich bei der nächsten Version Encoding.Default.

Zitat:
da steht: "\<name>" es sollte aber wohl "\k<name>" heißen.

Danke für den Hinweis. Ja, das k ist mir an sich tatsächlich verloren gegangen. Aber ich habe es gerade mal ausprobiert. Man braucht kein k anzugeben; \<name> funktioniert also auch. Deshalb werde ich es wohl so stehen lassen, zumal mir die Syntax ohne k besser gefällt und ich sie auch einleuchtender bzw. besser zu merken finde.

herbivore
08.12.2009 19:26 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Zwischen diesen beiden Beiträgen liegen mehr als 11 Monate.
Cuin Cuin ist männlich
myCSharp.de-Mitglied

Dabei seit: 31.05.2010
Beiträge: 92
Entwicklungsumgebung: Visual Studio 2010 Ultimate


Cuin ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hallo herbivore,

auch von mir vielen Dank für dieses tolle Programm!
Es hat mir meine Arbeit sehr erleichtert!

mfg Cuin
22.11.2010 23:10 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Zwischen diesen beiden Beiträgen liegen mehr als 4 Monate.
gordon2001 gordon2001 ist männlich
myCSharp.de-Mitglied

images/avatars/avatar-602.gif


Dabei seit: 23.02.2006
Beiträge: 211
Entwicklungsumgebung: Visual Studio 2008 Team Edit.
Herkunft: Mecklemburg-Vorpommern


gordon2001 ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Muss mich hier auch nochmal bedanken. Das Tool hilft mir so unglaublich beim entwickeln von Regex parsern. Vielen vielen Dank!
24.03.2011 14:06 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Zwischen diesen beiden Beiträgen liegen mehr als 3 Monate.
Hotte Hotte ist männlich
myCSharp.de-Mitglied

Dabei seit: 18.07.2010
Beiträge: 31
Entwicklungsumgebung: VS 2010


Hotte ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hallo Herbivore und alle anderen,

ich habe das Programm ein wenig meinen Bedürfnissen angepasst.
Jetzt wäre meine Frage, ob ich es hier auch wieder veröffentlichen darf.
Ich würde es natürlich mit Code zur freien Verwendung einstellen.
Wäre das in Ordnung bzw. besteht da überhaupt ein Interesse? smile

Ein paar Kleinigkeiten sind zwar noch nicht fertig, aber es kann nicht mehr wahnsinnig lange dauern bis es so weit ist.

Hotte hat dieses Bild (verkleinerte Version) angehängt:
regexstudio.png
Volle Bildgröße

18.07.2011 14:59 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
herbivore
myCSharp.de-Poweruser/ Experte

images/avatars/avatar-2627.gif


Dabei seit: 11.01.2005
Beiträge: 49.341
Entwicklungsumgebung: csc/nmake (nothing is faster)
Herkunft: Berlin

Themenstarter Thema begonnen von herbivore

herbivore ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hallo Hotte,

freut mich, dass du das Regex-Lab weiterentwickelt hast und deine Version und deine Code hier veröffentlichen willst. Natürlich ist das alles nicht nur erlaubt, sondern auch erwünscht.

herbivore
18.07.2011 16:01 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Hotte Hotte ist männlich
myCSharp.de-Mitglied

Dabei seit: 18.07.2010
Beiträge: 31
Entwicklungsumgebung: VS 2010


Hotte ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hi Herbivore,

super, dann werde ich in Kürze einen Thread aufmachen und das Ganze einstellen.
:o)

EDIT:  RegEx Studio
18.07.2011 16:13 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Zwischen diesen beiden Beiträgen liegt mehr als ein Jahr.
C#ler C#ler ist männlich
myCSharp.de-Mitglied

Dabei seit: 02.04.2011
Beiträge: 48
Entwicklungsumgebung: Visual Studio 2010


C#ler ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hallo Herbivore,

auch wenn es schon oft gesagt wurde, kann ich nur wiederholen, wie nützlich das Tool ist.
Vielen Dank für deine Arbeit!

C#ler
31.07.2012 15:27 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Zwischen diesen beiden Beiträgen liegen mehr als 3 Monate.
BlackMatrix BlackMatrix ist männlich
myCSharp.de-Mitglied

Dabei seit: 10.11.2012
Beiträge: 198


BlackMatrix ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Sehr nützliches Tool, vielen Dank.

Eine Frage hätte ich bzgl. Der Verwendung von

Zitat:
""

bzw.

Zitat:
\".

Es ist ja üblich, dass man Pattern in der Form:

C#-Code:
string pattern = @"pattern";

schreibt und die Anführungszeichen dann nicht durch

Zitat:
\"

sondern durch

Zitat:
""

angegeben werden.

Besteht die Möglichkeit, dies auch im Tool so zu verwenden oder muss man nachträglich die die Anführungsstriche ersetzen?
ersetzen?

Liebe Grüße,

BlackMatrix

Edit:

Beim Einfügen von einem langen string in das InputControl habe ich folgende Fehlermeldung erhalten:

Fehlermeldung:
System.AccessViolationException: Es wurde versucht, im geschützten Speicher zu lesen oder zu schreiben. Dies ist häufig ein Hinweis darauf, dass anderer Speicher beschädigt ist.
bei System.Windows.Forms.UnsafeNativeMethods.CallWindowProc(IntPtr wndProc, IntPtr hWnd, Int32 msg, IntPtr wParam, IntPtr lParam)
bei System.Windows.Forms.NativeWindow.DefWndProc(Message& m)
bei System.Windows.Forms.Control.WndProc(Message& m)
bei System.Windows.Forms.RichTextBox.WndProc(Message& m)
bei System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
bei System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

Dieser Beitrag wurde 2 mal editiert, zum letzten Mal von BlackMatrix am 12.11.2012 20:08.

12.11.2012 19:58 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
herbivore
myCSharp.de-Poweruser/ Experte

images/avatars/avatar-2627.gif


Dabei seit: 11.01.2005
Beiträge: 49.341
Entwicklungsumgebung: csc/nmake (nothing is faster)
Herkunft: Berlin

Themenstarter Thema begonnen von herbivore

herbivore ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hallo BlackMatrix,

die Escape-Sequenzen brauchst du nur innerhalb von String-Literalen. Das hat mit Regex nichts zu tun. Da Regex-Lab die Eingabe in einem Eingabefeld entgegen nimmt, brauchst du keine der Escape-Sequenzen, die nur für String-Literale im Quellcode erforderlich sind, zu verwenden.

Diese Escape-Sequenzen musst du erst dann einfügen, wenn du den (fertigen) Pattern aus Regex-Lab in ein String-Literal im Quelltext übernimmst. Dafür gibt es in Regex-Lab keine Unterstützung.

Meine Empfehlung ist, für Regex-Pattern im Quellcode immer das @ vor dem String-Literal zu verwenden. Dann beschränken sich die Nacharbeiten auf das Doppeln der Anführungszeichen, das man leicht vor Hand oder - besonders bei längeren Pattern mit vielen Anführungzeichen - per Suchen-und-Ersetzen im Editor vornehmen kann.

Trotzdem steht es natürlich jedem, der möchte, offen, Regex-Lab um eine entsprechende Funktion zu erweitern. Der Quelltext liegt ja vor.

Wegen der Exception-Meldung wäre es nett, wenn du mir eine PM mit einer genauen Beschreibung, was du wie gemacht hast (wie lang war der String, wie lang war die längste Zeile, gab es Besonderheiten, lässt sich der Fehler reproduzieren usw.) schicken könntest. Vielen Dank!

Es ist bekannt, dass RichtextBoxen von sich aus Probleme mit sehr langen Zeilen (ohne Leerzeichen) haben. Das kann jeder in Notepad ausprobieren. Üblicherweise führt das aber nur zu endlosen Wartezeiten nicht zu abstürzen. Daher mein Wunsch nach genaueren Informationen per PM.

EDIT: Laut BlackMatrix ist der Fehler bisher nur ein einziges Mal aufgetreten und ist nicht reproduzierbar. Daher erfolgen erstmal keine weiteren Maßnahmen.

herbivore
13.11.2012 08:59 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Zwischen diesen beiden Beiträgen liegen mehr als 5 Monate.
Programmierhans
myCSharp.de-Poweruser/ Experte

images/avatars/avatar-1651.gif


Dabei seit: 05.04.2005
Beiträge: 4.218
Entwicklungsumgebung: VS / Mono (IOS/LINUX)
Herkunft: Zentralschweiz


Programmierhans ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Auch mir hat das Teil sehr bei der Ausarbeitung von Ausdrücken geholfen (und nochmal ein Dank an herbivore).

Nur so als Tipp: Wenn ein Ausdruck im Tester funktioniert... aber im .Net Code nicht, dann kann es eigentlich fast nur daran liegen, dass per Default im Tester IgnoreCase geflaggt ist... (Habe ich dann nach mehr als 20 minütiger Suche auch irgendwann festgestellt).
08.05.2013 13:50 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
herbivore
myCSharp.de-Poweruser/ Experte

images/avatars/avatar-2627.gif


Dabei seit: 11.01.2005
Beiträge: 49.341
Entwicklungsumgebung: csc/nmake (nothing is faster)
Herkunft: Berlin

Themenstarter Thema begonnen von herbivore

herbivore ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hallo Programmierhans, hallo zusammen,

danke für den Hinweis! Ich habe diesen bzw. die die folgenden Tipps in Kurzform in den Startbeitrag aufgenommen.

Klar, man sollte alle Flags so übernehmen, wie sie in Regex-Lab gesetzt sind bzw. wie man sie in Regex-Lab gesetzt hat. Bzw. sollte man die Flags in Regex-Lab gleich so setzen, wie man sie später im Code haben möchte.

Aus meiner Sicht gibt es einen weiteren Grund, warum ein Pattern, der in Regex-Lab funktioniert, im Code nicht auf Anhieb funktioniert, nämlich wenn man ihn in ein String-Literal schreibt, ohne richtig zu escapen. Um nicht jeden enthaltenen Blackslash verdoppeln zu müssen, bietet es sich an, vor das String-Literal ein @ zu schreiben (siehe  [FAQ] Was bedeutet das @ (=at) vor String-Literalen? Und: Wissenswertes zu Escape-Sequenzen). Selbst dann muss man allerdings noch darauf achten, wenn im Pattern Anführungszeichen (insbesondere zwei Anführungszeichen hintereinander) enthalten sind. Anführungszeichen müssen in String-Literalen mit @ gedoppelt werden, um sie zu escapen.

herbivore
09.05.2013 06:34 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Zwischen diesen beiden Beiträgen liegt mehr als ein Jahr.
yetibrain yetibrain ist männlich
myCSharp.de-Mitglied

images/avatars/avatar-2570.gif


Dabei seit: 07.09.2007
Beiträge: 52
Entwicklungsumgebung: .NET 3.5 C#


yetibrain ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Geiles Teil,

schmiert auch bei codepoints außerhalb der Basic Multilingual Plane (BMP) nicht ab, habe heute erst Expresso damit zum Absturz gebracht, während Regex-Lab einen astreinen capture hatte.

Meine regex: [\u0009\u000a\u000d\u0020-\ud7ff\ue000-\ufffd]|([\ud800-\udbff](?=[\udc00-\udfff]))|((?<=[\ud800-\udbff])[\udc00-\udfff])

Mein Input: (codepoint 128685)
20.11.2014 14:41 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
herbivore
myCSharp.de-Poweruser/ Experte

images/avatars/avatar-2627.gif


Dabei seit: 11.01.2005
Beiträge: 49.341
Entwicklungsumgebung: csc/nmake (nothing is faster)
Herkunft: Berlin

Themenstarter Thema begonnen von herbivore

herbivore ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hallo yetibrain,

das freut mich zu hören. Ich möchte mich jedoch nicht mit fremden Federn schmücken. Das Lob gebührt den Entwicklern des .NET-Framworks, deren Regex-Methoden ich lediglich aufrufe.

herbivore
20.11.2014 22:03 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Seiten (2): « vorherige 1 [2] Baumstruktur | Brettstruktur       | Top 
myCSharp.de | Forum Der Startbeitrag ist älter als 10 Jahre.
Der letzte Beitrag ist älter als 2 Jahre.
Antwort erstellen


© Copyright 2003-2017 myCSharp.de-Team. Alle Rechte vorbehalten. 28.06.2017 16:10