どうも、ちょげ(@chogetarou)です。
文字列(string)の末尾から指定した文字数を削除する方法を紹介します。
方法

文字列(string)の後ろからN文字を削除する方法は、2つあります。
slice!メソッド
1つは、slice!メソッドを使う方法です。
まず、文字列からslice!メソッドを呼び出します。
そして、slice!メソッドの第1引数に削除する文字数のマイナスの値、第2引数に削除する文字数を指定します。
//text=対象の文字列, n=削除する文字数
text.slice!(-n, n)
上記のslice!メソッドは、呼び出した文字列(string)の末尾からN文字を削除します。
使用例
text = "Hello,World"
#後ろから6文字を削除
n = 6
text.slice!(-n, n)
p text
出力:
"Hello"
範囲(range)
もう1つは、範囲(range)を使う方法です。
「str[..-
N-1]」のように、[]で文字列の先頭から「-N-1」(N=削除する文字数)までの範囲を抽出します。
//text=対象の文字列, n=削除する文字数
result = text[..-n-1]
先頭から「-N-1」(N=削除する文字数)までの範囲を取り出すことで、文字列(string)の末尾からN文字を削除した文字列を取得できます。
使用例
text = "Hello,World"
#textの後ろから6文字を削除
n = 6
result = text[..-n-1]
p result
出力:
"Hello"
まとめ
文字列(string)の後ろからN文字を削除する方法は、2つあります。
- slice!メソッドを使う方法
text.slice!(-n, n)
- 範囲(range)を使う方法
result = text[..-n-1]
コメント