Le code ** slice ** est sorti comme une réponse dans l'exercice Ruby, et je ne pouvais pas le comprendre facilement, donc je vais le laisser comme un mémorandum.
Il y a deux chaînes. Ignorez la différence entre les majuscules et les minuscules et sélectionnez ** Vrai ** si l'un des caractères est à la fin de l'autre caractère Sinon, créez un programme qui renvoie ** False **. (Autrement dit, il est insensible à la casse).
Ruby
def end_other(a,b)
  a_down = a.downcase
  b_down = b.downcase
  a_len = a_down.length
  b_len = b_down.length
  if  a_down.slice!(-(b_len)..a_len - 1) == b_down #← Je vais expliquer cette ligne!
    puts "True"
  else
    puts "False"
  end
end
puts "Veuillez saisir l'alphabet"
code = gets.chomp
puts "Veuillez saisir le caractère spécifié"
find_word = gets.chomp
end_other(code, find_word)
** slice ** renvoie la sous-chaîne après avoir supprimé la plage spécifiée de la chaîne. Était: sourire: Référence: https://docs.ruby-lang.org/ja/2.3.0/method/String/i/slice=21.html
Exemple
string = "this is a string"
string.slice!(2)        #=> "i"
string.slice!(3..6)     #=> " is "
string.slice!(/s.*t/)   #=> "sa st"
string.slice!("r")      #=> "r"
: avertissement: le compte commence à ** 0 (zéro) **! Je suis tombé ici: la sueur:
Par conséquent, la réponse ci-dessus peut être expliquée en détail comme suit: point_up:
Commentaire
def end_other(a,b)
  a_down = a.downcase  
  #Convertissez toutes les lettres de la variable a en minuscules!
  b_down = b.downcase
  #Convertissez toutes les lettres de la variable b en minuscules!
  a_len = a_down.length
  #Obtenez le nombre de caractères dans la variable a!
  b_len = b_down.length
  #Obtenez le nombre de caractères dans la variable b!
  if  a_down.slice!(-(b_len)..a_len - 1) == b_down
  #-(b_len) :Renvoie le nombre de caractères de la variable b à partir du dernier caractère de la variable a
  #a_len - 1 :Renvoie la dernière lettre de la variable a
  #.. :Ci-dessus, représente ce qui suit
#réduction
Ça ressemble à ça, mais honnêtement, même moi? ?? ?? Je vais donc appliquer les personnages: souriant:
Commentaire commentaire www
a = wOrD
b = Rd
def end_other(a,b)
  a_down = a.downcase  
  #wOrD ⇒ word
  b_down = b.downcase
  #Rd ⇒ rd
  a_len = a_down.length
  #4 caractères
  b_len = b_down.length
  #2 personnages
  if  a_down.slice!(-(b_len)..a_len - 1) == b_down
  #-(b_len) :Renvoie les deux derniers caractères du mot ...>est r
  #a_len - 1 :Renvoie le dernier caractère du mot ...>ré
  #a_down.slice!(-(b_len)..a_len - 1) :Sera rd
#réduction
Cela peut être un peu déroutant. .. .. .. Désolé pour mon manque d'écriture: arc:
J'espère que cela vous aide un peu: rire:
Recommended Posts