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

string in einzelne Buchstaben und zahlen aufteilen

Leser: 2


<< >> 7 Einträge, 1 Seite
Gast Gast
 2004-05-27 16:16
#82800 #82800
Hallo, ich möchte einen String $string in einzelne Buchstaben und zahlen aufsplitten.

$string enthält z.B. abcde013

Jetzt möchte ich das alles in ein Array bekommen, damit ich auf das a mit @array[0] zugreifen kann.

Wie mache ich sowas, hat jemand eine Idee?

Danke schon mal.
micha
Taulmarill
 2004-05-27 16:29
#82801 #82801
User since
2004-02-19
1750 Artikel
BenutzerIn

user image
Code: (dl )
my @array = split "", "abcde0123";
\n\n

<!--EDIT|Taulmarill|1085660994-->
$_=unpack"B*",~pack"H*",$_ and y&1|0& |#&&print"$_\n"for@.=qw BFA2F7C39139F45F78
0A28104594444504400 0A2F107D54447DE7800 0A2110453444450500 73CF1045138445F4800 0
F3EF2044E3D17DE 8A08A0451412411 F3CF207DF41C79E 820A20451412414 83E93C4513D17D2B
markusmann
 2004-05-27 16:29
#82802 #82802
User since
2004-05-27
2 Artikel
BenutzerIn
[default_avatar]
@array = split(//, $string);

-Markus
Crian
 2004-05-27 17:08
#82803 #82803
User since
2003-08-04
5866 Artikel
ModeratorIn
[Homepage]
user image
Das fand ich am Anfang seh gewöhnungsbedürftig, schließlich konnte man in C direkt auf die einzelnen Zeichen eines Strings per Index zugreifen
Code: (dl )
1
2
const char * const text = "Testtext";
char ersteszeichen = text[0];


Aber dafür hat Perl soooo viele andere Vorteile ;)
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
markusmann
 2004-05-27 18:23
#82804 #82804
User since
2004-05-27
2 Artikel
BenutzerIn
[default_avatar]
Hi,
Ja schon, aber in C ist das Zeichen die elementare Einheit, während es bei Perl der "String" ist. Man hat halt nicht von Anfang ein ein Array vom Typ char, sondern eben nur datt janze, halt "String". Und deshalb muss man "String" erst in ein Array von Zeichen überführen. Der Vorteil bei der Perl-Variante ist zumindest, dass man beim Splitten mit einer RegEx arbeitet, die auch komplexe Fälle einer Auftrennung von Zeichenketten ermöglicht. So etwas ist mit C wesentlich schwieriger zu lösen .:rock:
ronald
 2004-05-28 12:06
#82805 #82805
User since
2003-08-15
76 Artikel
BenutzerIn
[default_avatar]
Frage: wofür brauchst du $array[0]?
Im Normalfall ist man doch mit RegEx viel besser dran...
renee
 2004-05-28 12:22
#82806 #82806
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
oder wenn man nur vereinzelt Buchstaben braucht, kann man auch substr verwenden...
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/
<< >> 7 Einträge, 1 Seite



View all threads created 2004-05-27 16:16.