Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]11624[/thread]

Regulärer Ausdruck! (Seite 2)



<< |< 1 2 >| >> 17 Einträge, 2 Seiten
Gast Gast
 2008-04-12 15:18
#108260 #108260
funktioniert doch...
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#!/usr/bin/perl

use strict;
use warnings;

my $a='Di Oma ist die beejk kkkkkkkkkkkkkkkkkkkkkk oma!';
 
if($a=~/om/)
{ print " Ausdruck gefunden(om)!\n\n" ; }
else
{ print "Nichts gefunden!\n\n"; }
 
if($a=~/\b\w{5,8}\b/)
{ print " Wort mit Länge von 5 bis 8 Zeichen gefunden!\n\n"; }
else
{ print "Nichts gefunden!\n\n"; }
taikahn22a
 2008-04-12 15:18
#108261 #108261
User since
2008-04-12
12 Artikel
BenutzerIn
[default_avatar]
AHhh Alles klar!!! Find das irngedwie voll schwer sowas richtig zu interpretieren... Vielen Vielen Dank!!!!
renee
 2008-04-12 15:26
#108262 #108262
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
taikahn22a+2008-04-12 13:10:31--
Mhh geht auch ncith.... Spukt auch Fehler aus... Zum verzweifeln hier...


Bei so etwas bitte immer die Fehlermeldung und den dazugehörigen Code posten. Denn wir sind hier keine Hellseher ;-)
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
betterworld
 2008-04-12 15:30
#108263 #108263
User since
2003-08-21
2614 Artikel
ModeratorIn

user image
taikahn22a+2008-04-12 13:18:52--
AHhh Alles klar!!! Find das irngedwie voll schwer sowas richtig zu interpretieren... Vielen Vielen Dank!!!!

Daher solltest Du, auch wenn es schon funktioniert, noch mal genau drueber nachdenken, wie der Ausdruck aufgebaut ist. Und nicht einfach ohne zu Fragen den fertigen Code aus diesem Thread uebernehmen ;)
taikahn22a
 2008-04-12 16:14
#108265 #108265
User since
2008-04-12
12 Artikel
BenutzerIn
[default_avatar]
Das ist richtig! Mir war nur nicht die reihenfolge bewusst. Ich weiß was jedes Zeichen macht und habe es auch super verstanden. Hier mal ein kleines Beispiel:

Möchte ich z.b am Ende des Strings testen ob dort ein 2 Buchstabiges wort steht nehme ich


Code (perl): (dl )
1
2
3
4
5
if($a=~ /\b\w{3}\b$/)
{
print "Wort mit 3 Buchstaben am Ende gefunden!\n\n" ;
}
else { print "Nichts gefunden!\n\n"; } 
betterworld
 2008-04-12 16:49
#108266 #108266
User since
2003-08-21
2614 Artikel
ModeratorIn

user image
taikahn22a+2008-04-12 14:14:46--
Code (perl): (dl )
1
2
3
4
5
if($a=~ /\b\w{3}\b$/)
{
print "Wort mit 3 Buchstaben am Ende gefunden!\n\n" ;
}
else { print "Nichts gefunden!\n\n"; } 

Das zweite \b kann man da weglassen, denn wenn ein Wort am Ende des Strings steht, ist es wohl auch am Ende des Strings zuende.

Bitte beachte ausserdem: $ ist nicht wirklich das Ende des Strings. Wenn das letzte Zeichen des Strings ein Newline ist, matcht $ vor dem Newline. Wenn Du wirklich das Ende des Strings treffen willst, nimm \z.
taikahn22a
 2008-04-12 17:41
#108271 #108271
User since
2008-04-12
12 Artikel
BenutzerIn
[default_avatar]
Oh ok!! Vielen vielen Dank! Das echt nicht so einfach hier..!!!
<< |< 1 2 >| >> 17 Einträge, 2 Seiten



View all threads created 2008-04-11 23:50.