Comment fractionner les valeurs de tableau en séparer tableaux en perl
J'ai un tableau qui stocke les coordonnées lat/long ensemble. Par exemple:
@values[0] = "-0.709999984318709,60.690000003554324"
Je suis en train de faire la séparation en deux tableaux, @lat
et @long
, basé sur la virgule.
Comment puis-je faire cela?
Grâce
Est l'élément du tableau en fait une chaîne de caractères avec une virgule dans le milieu, ou une référence à un tableau à 2 éléments?
son d'une chaîne avec une virgule. Je l'ai créé en crève d'une chaîne dans un tableau basé sur les espaces.
Vous avez su que vous vouliez
son d'une chaîne avec une virgule. Je l'ai créé en crève d'une chaîne dans un tableau basé sur les espaces.
Vous avez su que vous vouliez
split
. Donc, essayez perldoc -f split
.OriginalL'auteur whatahitson | 2013-06-04
Vous devez vous connecter pour publier un commentaire.
Tout d'abord, il est préférable d'écrire $valeurs[0] pour faire référence à l'élément de tableau.
La commande diviser va vous aider ici, en supposant que la virgule est cohérent:
Il y a un certain nombre de façons cela peut être fait, mais je l'ai fait d'une manière qui montrent la façon dont les tableaux sont gérés.
Ce
$name
variable parlez-vous? Vous ne pouvez pas inventer de nouvelles choses à mettre dans votre question.est le nom de chaque carte que j'ai les coordonnées. J'ai essayé de garder ma question simple en n'incluant que la corporation de la partie de mon code. Est-il mieux pour inclure tout le code dans mon script?
Si vous souhaitez des recommandations sur une structure de données, oui.
OriginalL'auteur Richard Morgan
Je suppose que vous voulez garder chaque latitude et la longitude de la valeur ensemble, auquel cas la transformation de votre tableau dans un tableau à deux dimensions serait approprié:
J'ai utilisé la notation complète de
split
ici pour invoquer laLIMIT
condition de 2 champs. Il ne peut pas d'importance pour ce type de données, mais peut importe si les conditions changent.Le code de la
map
déclaration de la première divise chaque élément de@values
en deux, met la liste des 2 dans un tableau anonyme[ ... ]
, qui est ensuite insérée dans le nouveau tableau. Le tableau qui en résulte ressemble à ceci lors de l'impression avecData::Dumper
:OriginalL'auteur TLP