regulären ausdruck matchen

Diskutiere regulären ausdruck matchen im Web & Grafik Forum im Bereich Internet & Telekomunikation Forum; hi leuts, folgendes problem: ich habe einen string mit zeilenumbrüchen, zba1 a2 b1 b2 ich möchte alle ergebnisse, die mit 'b' beginnen...
  • regulären ausdruck matchen Beitrag #1
haselocke

haselocke

Bekanntes Mitglied
Dabei seit
05.06.2005
Beiträge
83
Reaktionspunkte
0
Ort
McPomm
hi leuts,

folgendes problem:
ich habe einen string mit zeilenumbrüchen, zb
Code:
a1
a2
b1
b2

ich möchte alle ergebnisse, die mit 'b' beginnen.
dafür benutze ich und fast jeder andere auch, folgenden regulären ausdruck '^b'.
leider liefert mir das kein ergebnis, weil 'b' ja nich am anfang vom string steht, sondern am anfang einer zeile. nun könnte ich den string zeilenweise einlesen, das soll aber nich sein, also brauch ich eine andere lösung.

meine idee war es nun folgendes:
damit der user meines programms (in java programmiert) nich umdenken muss, wollte ich den regulären ausdruck intern umwandeln, damit dieser auch das 'b' nach einen zeilenumbruch '\n' erkennt.
der richtige reguläre Ausdruck, der auch funktioniert wäre dann: '(^|\n)b'

nun besteht wahrhaftig die lösung nur noch darin im eingegbenen regulären ausdruck das '^' zu suchen und in das '(^|\n)' umzuwandeln.
und genau da liegt das problem.

erschwerend kommt noch hinzu, das vor dem '^' kein '[' stehen darf. also muss ich intern, in dem vom user eingegebenen regulären ausdruck, nach sowas '[^\[]\^' suchen und den dann nach '(^|\n)' umwandeln.

als fehlermeldung erhalte ich vom compiler nur ein haufen 'illegal escape character', die ohne zweifel durch die 'falschen' regulären ausdrücke entstanden sind.

so, und wenn jetzt noch irgenwer mein kauderwelsch verstanden hat und auch eine lösung weiß, prima, dann her damit.

mfg


@ADMIN: bin ich mit den thema überhaupt hier richtig? -grübel-
 
  • regulären ausdruck matchen Beitrag #2
matmike

matmike

Bekanntes Mitglied
Dabei seit
08.01.2001
Beiträge
762
Reaktionspunkte
0
Ort
Outer Space
Ich hatte sowas mal in Perl. Es gibt dort eine Variable, die beschreibt, was als Zeilenumbruch gewertet wird. Wenn ich diese (vorübergehend!!!!) auf leer gesetzt habe, konnte ich den Ausdruck ganz normal durchsuchen. VIelleicht hilft das ja. ALternative: Zerlege den String in einzelne String jeweils mit dem \n als Trennzeichen, such danach und bau ihn wieder zusammen.

MatMike
 
Thema:

regulären ausdruck matchen

ANGEBOTE & SPONSOREN

https://www.mofapower.de/

Statistik des Forums

Themen
213.180
Beiträge
1.579.174
Mitglieder
55.879
Neuestes Mitglied
stonetreck
Oben