Perl - Types de données

Perl est un langage mal typé et il n'est pas nécessaire de spécifier un type pour vos données lors de l'utilisation dans votre programme. L'interpréteur Perl choisira le type en fonction du contexte des données elles-mêmes.

Perl a trois types de données de base: les scalaires, les tableaux de scalaires et les hachages de scalaires, également appelés tableaux associatifs. Voici un petit détail sur ces types de données.

N ° Sr. Types et description
1

Scalar

Les scalaires sont des variables simples. Ils sont précédés d'un signe dollar ($). Un scalaire est un nombre, une chaîne ou une référence. Une référence est en fait l'adresse d'une variable, que nous verrons dans les prochains chapitres.

2

Arrays

Les tableaux sont des listes ordonnées de scalaires auxquelles vous accédez avec un index numérique, qui commence par 0. Ils sont précédés d'un signe «at» (@).

3

Hashes

Les hachages sont des ensembles non ordonnés de paires clé / valeur auxquels vous accédez en utilisant les clés comme indices. Ils sont précédés d'un signe de pourcentage (%).

Littéraux numériques

Perl stocke tous les nombres en interne sous forme d'entiers signés ou de valeurs à virgule flottante double précision. Les littéraux numériques sont spécifiés dans l'un des formats à virgule flottante ou entier suivants -

Type Valeur
Entier 1234
Entier négatif -100
Point flottant 2000
Notation scientifique 16.12E14
Hexadécimal 0xffff
Octal 0577

Littéraux de chaîne

Les chaînes sont des séquences de caractères. Ce sont généralement des valeurs alphanumériques délimitées par des guillemets simples (') ou doubles ("). Ils fonctionnent un peu comme les guillemets shell UNIX où vous pouvez utiliser des chaînes entre guillemets simples et des chaînes entre guillemets doubles.

Les littéraux de chaîne entre guillemets autorisent l'interpolation de variables, contrairement aux chaînes entre guillemets simples. Il y a certains caractères lorsqu'ils sont précédés d'une barre oblique inverse, ont une signification particulière et ils sont utilisés pour représenter comme une nouvelle ligne (\ n) ou une tabulation (\ t).

Vous pouvez intégrer des nouvelles lignes ou l'une des séquences d'échappement suivantes directement dans vos chaînes entre guillemets -

Séquence d'échappement Sens
\\ Antislash
\ ' Simple citation
\ " Double citation
\une Alerte ou cloche
\ b Retour arrière
\F Saut de formulaire
\ n Nouvelle ligne
\ r Retour chariot
\ t Onglet horizontal
\ v Onglet vertical
\ 0nn Crée des nombres au format octal
\ xnn Crée des nombres au format hexadécimal
\ cX Contrôle les caractères, x peut être n'importe quel caractère
\ u Force le caractère suivant en majuscule
\ l Force le caractère suivant en minuscules
\ U Force tous les caractères suivants en majuscules
\ L Force tous les caractères suivants en minuscules
\ Q Barre oblique inverse tous les caractères non alphanumériques suivants
\ E Fin \ U, \ L ou \ Q

Exemple

Voyons à nouveau comment les chaînes se comportent avec des guillemets simples et doubles. Ici, nous utiliserons les échappements de chaîne mentionnés dans le tableau ci-dessus et utiliserons la variable scalaire pour attribuer des valeurs de chaîne.

#!/usr/bin/perl

# This is case of interpolation.
$str = "Welcome to \ntutorialspoint.com!";
print "$str\n";

# This is case of non-interpolation.
$str = 'Welcome to \ntutorialspoint.com!';
print "$str\n";

# Only W will become upper case.
$str = "\uwelcome to tutorialspoint.com!";
print "$str\n";

# Whole line will become capital.
$str = "\UWelcome to tutorialspoint.com!";
print "$str\n";

# A portion of line will become capital.
$str = "Welcome to \Ututorialspoint\E.com!"; 
print "$str\n";

# Backsalash non alpha-numeric including spaces.
$str = "\QWelcome to tutorialspoint's family";
print "$str\n";

Cela produira le résultat suivant -

Welcome to
tutorialspoint.com!
Welcome to \ntutorialspoint.com!
Welcome to tutorialspoint.com!
WELCOME TO TUTORIALSPOINT.COM!
Welcome to TUTORIALSPOINT.com!
Welcome\ to\ tutorialspoint\'s\ family