るりまサーチ

最速Rubyリファレンスマニュアル検索!
22件ヒット [1-22件を表示] (0.049秒)
トップページ > クエリ:-[x] > クエリ:squeeze![x]

別のキーワード

  1. _builtin -
  2. open-uri open
  3. irb/input-method new
  4. irb/input-method gets
  5. matrix -

ライブラリ

クラス

検索結果

String#squeeze!(*chars) -> self | nil (18230.0)

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

...にまとめます。

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

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

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

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

//emlist[例][ruby]{
str = "112233445566778899"
str.squeeze!
p str # =>"123456789"

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

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

String#tr_s!(pattern, replace) -> self | nil (148.0)

文字列の中に pattern 文字列に含まれる文字が存在したら、 replace 文字列の対応する文字に置き換えます。さらに、 置換した部分内に同一の文字の並びがあったらそれを 1 文字に圧縮します。

...a-c」は a から c を意味し、
"^0-9" のように文字列の先頭が「^」の場合は指定した文字以外が置換の対象になります。

replace でも「-」を使って範囲を指定できます。

//emlist[][ruby]{
p "gooooogle".tr_s("a-z", "A-Z") # => "GOGLE"
//}

-...
...合にだけ範囲指定の意味になります。
同様に、「^」もその効果は文字列の先頭にあるときだけです。
また、「-」、「^」、「\」はバックスラッシュ (「\」) でエスケープできます。

replace の範囲が search の範囲よりも小さ...
...す。

注意:
一般に、tr_s! を tr! と squeeze! で置き換えることはできません。
tr! と squeeze! の組みあわせでは tr! の置換後の文字列全体を squeeze! しますが、
tr_s! は置換された部分だけを squeeze! します。
以下のコードを参照し...