names=squeeze!
visibility=public
kind=defined

--- squeeze!(*chars) -> self | nil

chars に含まれる文字が複数並んでいたら 1 文字にまとめます。

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

`-' は文字列の両端にない場合にだけ範囲指定の意味になります。
同様に、`^' もその効果は文字列の先頭にあるときだけです。また、
`-', `^', `\' はバックスラッシュ(`\')によ
りエスケープすることができます。

引数を 1 つも指定しない場合は、すべての連続した文字を 1 文字にまとめます。

引数を複数指定した場合は、すべての引数にマッチする文字を 1 文字にまとめます。

1 文字もまとめられなかった場合は nil を返します。

@param chars １文字にまとめる文字。

例:
    str = "112233445566778899"
    str.squeeze!
    p str    # =>"123456789"

    str = "112233445566778899"
    str.squeeze!("2-8")
    p str    # =>"11234567899"

    str = "123456789"
    str.squeeze! # => nil
    p str        # =>"123456789"

