Schrift
[thread]6034[/thread]

Pattern matching: zahlen aus einem String herauslesen (Seite 2)

Leser: 1


<< |< 1 2 3 4 >| >> 35 Einträge, 4 Seiten
Crian
 2004-01-23 20:27
#79459 #79459
User since
2003-08-04
5873 Artikel
ModeratorIn
[Homepage]
user image
[quote=DS,23.01.2004, 16:54]$match = ($line =~ /^-- (\d+)/);[/quote]
Obwohl das geht, würd ich Anfängern doch lieber

($match) = $line =~ /^-- (\d+)/;

nahebringen wollen...

Und außerdem (don't use / if / or \ is in your RE) ist

($match) = $line =~ m~^-- (\d+)~;

schöner, imho.
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite
Dubu
 2004-01-23 21:44
#79460 #79460
User since
2003-08-04
2145 Artikel
ModeratorIn + EditorIn

user image
Zum Thema "do {...} mit last / next":

Code: (dl )
1
2
3
4
5
6
7
FOO: {
   do {
       ...
       last if ...;
       ...
   } while ...;
}

Das Label muss beim 'last' hier nicht extra genannt werden.

Einfacher geht's sogar noch bei 'next':
Code: (dl )
1
2
3
4
5
do {{
   ...
   next if ...;
   ...
}} while ...;

Siehe perlsyn, Abschnitt "Simple Statements".
DS
 2004-01-23 22:07
#79461 #79461
User since
2003-08-04
247 Artikel
BenutzerIn
[default_avatar]
@dubu: Danke, das schaut interessant aus...

Was ich komisch finde:

Code (perl): (dl )
1
2
3
{
  do { last };
}


... geht auch.

Warum hält er einen normalen Block {} für einen "loop block" und einen block bei do nicht?

Lustigerweise kann man das Ganze dann so machen:

Code (perl): (dl )
do {{ last }};


Warum is das sinnvoll? Oder is es das ned?
Strat
 2004-01-23 22:49
#79462 #79462
User since
2003-08-04
5246 Artikel
ModeratorIn
[Homepage] [default_avatar]
weil es do BLOCK heisst (siehe z.B. perldoc -f do), genauso wie if (...) BLOCK oder so.

{...} zaehlt als Schleife, die einmal durchlaufen wird. als weitere schleifenkonstruktionen fallen mir jetzt nur while und for(each) ein, und da kann man mit redo, next und last arbeiten;

was z.B. ergibt folgendes:
Code: (dl )
1
2
3
4
{
 print "\a";
 redo;
}
\n\n

<!--EDIT|Strat|1074891135-->
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/
DS
 2004-01-23 23:15
#79463 #79463
User since
2003-08-04
247 Artikel
BenutzerIn
[default_avatar]
@Strat: Gratuliere, das bisserl Code hat mein System für 10min flach gelegt. ;)
Strat
 2004-01-23 23:58
#79464 #79464
User since
2003-08-04
5246 Artikel
ModeratorIn
[Homepage] [default_avatar]
hmm, ich habe sowas befuerchtet... sorry!
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/
eisbeer
 2004-01-24 13:45
#79465 #79465
User since
2003-08-29
347 Artikel
BenutzerIn
[Homepage] [default_avatar]
Vielleicht mal lieber den post entschärfen :)

Also, wie gesagt, komisch ist, das do {} alleine
nicht mit last verlassen werden kann, hingegen
logisch, das do{{ last; }} den Block verlässt.
Irgendwas wird sich der Larry schon überlegt
ham dabei :)
Die meisten PC Probleme befinden sich zwischen Bildschirm und Stuhl...
pq
 2004-01-24 14:41
#79466 #79466
User since
2003-08-04
12209 Artikel
Admin1
[Homepage]
user image
[quote=DS,23.01.2004, 22:15]@Strat: Gratuliere, das bisserl Code hat mein System für 10min flach gelegt. ;)[/quote]
was hast du denn für ein system? doch nicht etwa windows?
abigail in comp.lang.perl.misc:
Oh, fastest way to shutdown Win2000 from Perl that I know is:
   print "\t\t\b\b\b\b\b\b\b\b\b\b\b\b" while 1;
Although this might be fixed with some patch.
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
DS
 2004-01-24 15:00
#79467 #79467
User since
2003-08-04
247 Artikel
BenutzerIn
[default_avatar]
[quote=pq,24.01.2004, 13:41]was hast du denn für ein system? doch nicht etwa windows?[/quote]
WinXP... ich schäme mich ja schon... :O

Das System hat nur noch sehr sporadisch reagiert... dementsprechend hat's a Zeit gedauert, bis der Taskmanager offen war und perl.exe sowie cmd.exe beendet...

Lustiger Bug das eigentlich... zumindest hat es noch kein anderes Programm vorher geschafft, mein System derart zum hängen zu kriegen... ;)
Strat
 2004-01-24 16:00
#79468 #79468
User since
2003-08-04
5246 Artikel
ModeratorIn
[Homepage] [default_avatar]
@pq: wow, da braucht mein versuch nur die haelfte der Zeichen, die Abigail benoetigte... vielleicht sollte ich auch mal zu golfen beginnen ;-)
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/
<< |< 1 2 3 4 >| >> 35 Einträge, 4 Seiten



View all threads created 2004-01-23 16:13.