stoperror
Goto Top

Regulärer Ausdruck mit VB6

Brauche mal eine kleine Unterstützung bei einem regulärem Ausdruck

Hallo,

ich möchte in einem String, der in etwa so aussehen kann:

"Text, , . , . . Text2. , ."

folgende Ersetzung durchführen.

Satzzeichen (Punkt oder Komma) mit nachfolgendem Leerzeichen sollen durch das erste Satzzeichen ersetzt werden.

Ich habe als Verweis erstmal die Microsoft VBScript Regular Expressions 5.5 gesetzt und möchte nun mein Pattern erstellen:

.Pattern = "([,|\.] )+"

Bei dem Leerzeichen bin ich mir nicht ganz sicher, wie ich das darstellen muss...
Gilt \:b nur für C++?

Und wie ich dann beim Replace, das erste Satzzeichen nehmen kann, ist mir auch noch nicht so ganz klar --> irgendwie mit $1

Replace(Teststring, (left($1, 1)))

Stimmt das so?

Nein, wohl nicht,
denn VB läßt den Replace-Ausdruck so nicht zu. Mag das $1 - Zeichen nicht....


Ah, so akzeptiert's VB:

Replace(strWSString, (Left("$1", 1)))
Hatte vergessen das $1 in einen String zu setzen.

Content-ID: 18550

Url: https://administrator.de/contentid/18550

Ausgedruckt am: 13.11.2024 um 22:11 Uhr

Biber
Biber 27.10.2005 um 11:17:02 Uhr
Goto Top
Dir auch einen Guten Morgen, stoperror,

face-wink
ich muss auch manchmal solche Sachen laut vor mich hin sprechen, um sie richtig zu verstehen.
Finde ich gut, dass Du es gepostet hast. *ernstmeint
Kannst Deinen "Beitrag" ruhig in "Tutorial" ändern....

Grüße aus Bremen
Biber
stoperror
stoperror 27.10.2005 um 15:07:22 Uhr
Goto Top
Ja, manchmal hilft das.
Aber ganz so wie ich möchte, funktioniert's leider noch nicht ganz bzw. mein Kollege meint grad, da wären noch Fehler drin:

.Pattern = "([\.|,] )+"

Der Punkt muss doch "escaped" sein, damit er nicht als "beliebiges Zeichen" interpretiert wird".
Mein Kollege meinte gerade, dass ich hier das Pipe nicht als Oder-Zeichen verwende, sondern, dass es für das Zeichen Pipe steht.
Biber
Biber 27.10.2005 um 21:43:09 Uhr
Goto Top
Also, stoperror,
VB6 hab ich hier zu Hause nicht installiert, aaaaaaaber mit anderen Tools, die reguläre Ausdrücke interpretieren können, wird
[\. |, ] (Slash,Dot, SPACE Pipe, Komma, SPACE)
als gültige ODER-Bedingung erkannt und abgearbeitet.

Also sollte bei allen kleinen Unterschieden mindestens das ODER als ODER auch von VB erkannt werden.
HTH Biber