German Trennzeichen bei Regex.Split

peternmb

Active Member
Licensed User
Hallo,

gibt es für die Trennzeichen bestimmte Vorgaben?
Mit Komma funktioniert es, ich wollte aber weder Komma noch Strichpunkt verwenden.
B4X:
str_array = ListVar.Get(zeile)              'Zeile einlesen
arr_zeile = Regex.Split("|",str_array)      'Textzeile in Array umwandeln

So funktioniert es leider nicht :oops:
 

DonManfred

Expert
Licensed User
Ich weiss es grad nicht genau; probiers mal mit
B4X:
arr_zeile = Regex.Split("\|",str_array)
oder
B4X:
arr_zeile = Regex.Split("/|",str_array)
| ist ein Sonderzeichen in RegEx und muss Escaped werden
 

peternmb

Active Member
Licensed User
funktioniert leider beides nicht
Ich habe mich jetzt schweren Herzens doch für einen Strichpunkt entschieden.
 

MaFu

Well-Known Member
Licensed User
Pipe (|) ist ein Regex Sonderzeichen und muss deshalb escaped werden. Das Escapezeichen ist der Backslash, die korrekte Schreibweise (welche auch funktioniert) ist demzufolge
arr_zeile = Regex.Split("\|",str_array)
 

DonManfred

Expert
Licensed User

peternmb

Active Member
Licensed User
hab ich oben ja auch geschrieben weil ich dachte ich hätte es so im kopf. Da du das aber nun bestätigst bin ich etwas verwirrt ..o_O
Tja, zumindest bei mir funktioniert es nicht.
Ich habe gestern etwas im Forum gestöbert und auch irgendwo einen englischen Beitrag gefunden, dass es sich anscheinend um einen Bug handelt.
 

MaFu

Well-Known Member
Licensed User
Tja, zumindest bei mir funktioniert es nicht.
Ich habe gestern etwas im Forum gestöbert und auch irgendwo einen englischen Beitrag gefunden, dass es sich anscheinend um einen Bug handelt.
Poste doch mal Dein Programm als ZIP, ev. liegt der Fehler ja woanders.
 

peternmb

Active Member
Licensed User
Poste doch mal Dein Programm als ZIP, ev. liegt der Fehler ja woanders.
ich werde es nochmal probieren wenn ich etwas Zeit habe, im Moment läuft es mit dem Strichpunkt einwandfrei.
Ich wüsste nicht, wo das Problem sonst liegen sollte, da es mit Strichpunkt funktioniert ;)
 

MaFu

Well-Known Member
Licensed User
Es ist aber auch eine Tatsache, dass es bei jedem Anderen funktioniert. Daher liegt die Vermutung nahe, dass der Fehler ev. doch irgendwo in Deinem Code steckt.
Mit welcher Android Version hast Du es getestet?
 
Top