Extraire des caractères de la méthode de tranche de chaîne Ruby

Quelle est la méthode des tranches?

La méthode slice est une méthode qui extrait les caractères de la condition spécifiée par l'argument de la chaîne de caractères.

#Exemple: string"Hello world"2e caractère depuis le début de"e"Extrait
string = "Hello world"
string.slice(1) #=> "e"

#Renvoie nil si le caractère correspondant n'est pas trouvé dans l'argument
string.slice(11) #=> nil

Comment utiliser la méthode slice

La méthode slice spécifie les conditions pour les caractères à extraire dans l'argument. Il existe les méthodes suivantes pour spécifier l'argument.

Spécifiez le nombre de caractères à partir du début ou de la fin de la chaîne de caractères

Spécifiez le nombre de caractères à partir du début de la chaîne de caractères. Notez que les nombres commencent par 0 (la première lettre est 0, la seconde à partir du début est 1)

string = "Hello world"

#Spécifiez le nombre de caractères depuis le début, le premier nombre est 0
string.slice(0) #=> "H"
string.slice(1) #=> "e"
string.slice(2) #=> "l"
string.slice(3) #=> "l"
string.slice(4) #=> "o"

En spécifiant une valeur négative, vous pouvez également spécifier le nombre de caractères à l'arrière. Dans ce cas, le dernier caractère est compté comme -1, le second à partir de l'arrière est compté comme -2, et ainsi de suite.

string = "Hello world"

#Spécifiez le nombre de caractères à partir du verso, le dernier chiffre est-1
string.slice(-5) #=> "w"
string.slice(-4) #=> "o"
string.slice(-3) #=> "r"
string.slice(-2) #=> "l"
string.slice(-1) #=> "d"

Spécifiez le numéro depuis le début ou la fin de la chaîne de caractères et le nombre de caractères à partir de là

Extrayez les caractères en spécifiant une plage dans la chaîne de caractères. Spécifiez la position de départ et le nombre de caractères à extraire. Encore une fois, les nombres commencent à 0.

string = "Hello world"

#conduire(0ème)Extraire 5 caractères de
string.slice(0,5) #=> "Hello"

#Extraire 5 personnages du 6e
string.slice(6,5) #=> "world"

En spécifiant une valeur négative pour la position de départ, vous pouvez également spécifier le nombre de caractères à l'arrière. Dans ce cas également, le dernier caractère est compté comme -1, et le second à partir du dos est compté comme -2.

string = "Hello world"

# -Extraire 5 caractères du 11e
string.slice(-11,5) #=> "Hello"

# -Extraire 5 caractères du 5e
string.slice(-5,5) #=> "world"

Spécifiez directement le caractère que vous souhaitez extraire

Spécifiez un caractère spécifique à extraire.

string = "Hello world"

# "H"Spécifier
string.slice("H") #=> "H"

# "Hello"Spécifier
string.slice("Hello") #=> "Hello"

#Renvoie nil si vous spécifiez un caractère qui n'est pas inclus
string.slice("hello") #=> nil

Spécifié par une expression régulière

Spécifiez le caractère que vous souhaitez extraire avec une expression régulière.

string = "Hello world"

#Spécifiez "caractères commençant par w et se terminant par d" dans l'expression régulière
string.slice(/w.*d/) #=> "world"

Spécifiez une plage avec l'opérateur de plage

Utilisez l'opérateur de plage (.., ...) pour spécifier la plage dans la chaîne et extraire les caractères. Encore une fois, les nombres commencent à 0.

string = "Hello world"

#conduire(0ème)Extrait du au 4e
string.slice(0..4) #=> "Hello"

# ...N'inclut pas le caractère à la fin de la plage
string.slice(0...4) #=> "Hell"

Différence entre la méthode slice et la méthode slice!

Il existe également une méthode appelée slice!, Mais c'est aussi une méthode qui extrait et renvoie les caractères d'une chaîne de caractères de la même manière que la méthode slice. La méthode de spécification de l'argument est la même que la méthode slice. Cependant, si vous utilisez la méthode slice!, Les caractères extraits seront supprimés de la chaîne de caractères d'origine.

string = "Hello world"

#L'utilisation de la méthode slice ne modifie pas la chaîne d'origine
string.slice(0..4) #=> "Hello"
string #=> "Hello world"

# slice!L'utilisation de la méthode supprime la chaîne de la chaîne d'origine
string.slice!(0..4) #=> "Hello"
string #=> " world"

Résumé

Recommended Posts

Extraire des caractères de la méthode de tranche de chaîne Ruby
[Java] Supprimer les espaces dans les chaînes de caractères
Extraire des caractères de la méthode de tranche de chaîne Ruby
[Ruby] Méthode pour compter des caractères spécifiques
[Ruby] Des bases à la méthode inject
Méthode Ruby to_s
[Ruby] méthode d'initialisation
Méthode de construction Ruby
Méthode d'accesseur Ruby
méthode de la carte rubis
[Introduction à Ruby] Comment utiliser la méthode slice
[Ruby] Découpez une chaîne de caractères à l'aide de la méthode slice
abréviation de la méthode ruby
Remarques sur le fil de discussion Ruby # [] = méthode
définition de la méthode ruby
De Java à Ruby !!
[Ruby] Résumé des définitions de méthode