Thread ucfirst in RegEx nutzen (12 answers)
Opened by Lebewesen at 2011-11-09 16:41

Lebewesen
 2011-11-09 16:41
#154062 #154062
User since
2011-09-09
62 Artikel
BenutzerIn

user image
Hallo,

ich nutze Perl schon seit längeren, und immer haben mir die Manpages oder Bücher weiter geholfen. Allerdings habe ich gerade ein Problem, dass ich nicht alleine Lösen kann, deswegen dachte ich mir, ich probiere es einmal über ein Forum.

Ich suche in einem Text nach Überschriften, und will darin nur die Anfangsbuchstaben groß geschrieben haben.

1. Ich habe es mit \u probiert, aber das hat keine Auswirkung…
2. Des weiteren, muss ich use locale; verwenden um deutsch zu bekommen? Wie kann ich dann auf andere Sprachen umstellen?

Code: (dl )
1
2
use locale;
$daten=~s%(== .*?KAPITEL) (.*? ==)%\u$1 - \u$2%gi;


Vielen Dank,
Bastian

Edit: \u war vorher \l, allerdings funktioniert es trotzdem nicht…
Wenn ich \use locale; verwende zerschießt es mir im Text die Umlaute. Meine Script ist in UTF-8 und meine Datei die ich einlesen. Allerdings bekomme ich als Ausgabe eine Datei die ANSI codiert ist, wenn ich \use locale; verwende, wenn nicht ist die Ausgabe Datei auch UTF-8.

Ich verwende Win7 und Active Perl

Edit1: Beispiel
Dies soll gefunden und geändert werden
Code: (dl )
1
2
== ERSTES KAPITEL DIE BANANE IST KRUMM ==
== ZWEITES KAPITEL NOCH EINE LUSTIGE ÜBERSCHRIFT ==

Last edited: 2011-11-09 17:01:22 +0100 (CET)

View full thread ucfirst in RegEx nutzen