Thread Problem mit Match Anweisung und RegEx
(9 answers)
Opened by Corni_Cornflake at 2017-08-20 15:38
Hi,
Du hast zwar runde Klammern in Deinem Split-Muster, aber die stehen innerhalb von eckigen Klammern. Damit sind sie Bestandteil einer Zeichenklasse und haben keine einfangende Funktion mehr. Innerhalb einer Zeichenklasse brauchst Du auch kein | um einzelne verschiedene Zeichen anzugeben. Code: (dl
)
@saetze= split(/[(\.|,|?|\!|:|;)]/,$normalText); Mit Deinem Muster wird gesplittet an: - ( - . - | (zählt nur einmal, auch wenn es mehrmals genannt wird) - , - ? - ! - : - ; - ) Vieleicht willst Du eher: Code: (dl
)
@saetze = split( /([.,:;?!])/,$normalText ); Oder ohne Zeichenklasse: Code: (dl
)
@saetze = split( /(\.|,|:|;|\?|\!)/,$normalText ); Alles ungetestet zusammengeschrieben ;-) meine Beiträge: I.d.R. alle Angaben ohne Gewähr und auf Linux abgestimmt!
Die Sprache heisst Perl, nicht PERL. - Bitte Crossposts als solche kenntlich machen! |