Je souhaite ajouter un espace avant et après les chaînes aléatoires.Ajouter des espaces avant et après une chaîne dans ruby?
J'ai essayé d'utiliser "Random_string" .center (1, "") mais cela ne marche pas.
Merci
Je souhaite ajouter un espace avant et après les chaînes aléatoires.Ajouter des espaces avant et après une chaîne dans ruby?
J'ai essayé d'utiliser "Random_string" .center (1, "") mais cela ne marche pas.
Merci
Mon rubis est rouillé, mais l'OMI a rien de mal avec la façon facile
def pad(random)
" " + random + " "
end
padded_random_string = pad("random_string")
à l'aide du centre
"random_string".center("random_string".length + 2)
Cela ne devrait-il pas être pad ("random_string") '? –
heh, je réclame Ruby rouille :) la fixation ... –
irb(main):001:0> x='Random String'
=> "Random String"
irb(main):002:0> y=' '+x+' '
=> " Random String "
irb(main):003:0> x.center(x.length+2)
=> " Random String "
Le paramètre à center
est la longueur totale la chaîne de sortie souhaitée (y compris le remplissage).
basé sur les docs, vous n'avez pas besoin du deuxième argument pour centrer, mais je n'ai pas testé, donc il pourrait être faux :) –
@ Lucas- le deuxième paramètre, s'il est présent, est une chaîne à utiliser comme caractère (s) de remplissage. Si elle est omise, les espaces sont utilisés. Je pense que c'était un ajout dans Ruby 1.8, et ce lien pourrait faire référence à la version 1.6. – bta
à droite. J'aurais dû déclarer que vous n'en aviez pas besoin pour répondre à sa demande, puisque, sur la base de sa question, il veut ajouter de l'espace. –
Je veux dire, y a-t-il une raison pour laquelle vous ne pouvez pas faire cela?
padded_string = ' ' + random_string + ' '
Je trouve cela la solution la plus élégante:
padded_string = " #{random_string} "
Rien de mal à prendre la voie facile.
C'est la solution la plus propre. –
"Random_string" .ljust ("Random_string" .length + 4) .rjust ("Random_string" .length + 8)
ou "Random_string" .ljust (17) .rjust (21) # où « Random_string "est de 13 caractères
en utilisant la méthode .ljust avec .rjust méthode
En d'autres termes, juste .ljust plus les méthodes .rjust ensemble –
' str.ljust (int) 'et' str.rjust (int) 'sont les méthodes que je cherchais quand je suis arrivé à ce poste . [Plus d'infos sur ceux-ci] (https://ruby-doc.org/core-2.2.0/String.html#method-i-ljust) –