Ruby 1.8.7 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > Stringクラス > delete

instance method String#delete

delete(*strs) -> String

self から strs に含まれる文字を取り除いた文字列を生成し返します。

str の形式は tr(1) と同じです。 つまり、`a-c' は a から c を意味し、"^0-9" のように 文字列の先頭が `^' の場合は指定文字以外を意味します。

「-」は文字列の両端にない場合にだけ範囲指定の意味になります。 「^」も文字列の先頭にあるときだけ効果を発揮します。 また、「-」「^」「\」はバックスラッシュ (「\」) によってエスケープできます。

なお、引数を複数指定した場合は、 すべての引数にマッチする文字だけが削除されます。

[PARAM] strs:
削除する文字列を示す文字列 (のリスト)

例:

p "123456789".delete("2378")         #=> "14569"
p "123456789".delete("2-8", "^4-6")  #=> "14569"
delete(str) -> String [redefined by jcode]

String#delete の日本語対応版です。 指定したパターンの文字列を取り除きます。

ただしこのメソッドは置き換え前の物とは異なり 複数の引数を取れません。

[PARAM] str:
取り除く文字のパターン。

例:

#!/usr/bin/env ruby

$KCODE = 'EUC'
zstr = 'ABCDEF'
hoge = 'hogehoge'

p zstr.delete("A")  # => "唾津\306"
p hoge.delete("e")   # => "hoghog"

require 'jcode'
p zstr.delete("A")  # => "BCDEF"
p hoge.delete("e")   # => "hoghog"
class String