るりまサーチ (Ruby 2.5.0)

最速Rubyリファレンスマニュアル検索!
711件ヒット [1-100件を表示] (0.165秒)

別のキーワード

  1. string []=
  2. string slice
  3. string []
  4. string slice!
  5. string gsub

ライブラリ

クラス

キーワード

検索結果

<< 1 2 3 ... > >>

Net::IMAP::BodyTypeBasic#param -> { String => String } | nil (54913.0)

MIME のボディパラメータをハッシュテーブルで返します。

MIME のボディパラメータをハッシュテーブルで返します。

ハッシュテーブルのキーがパラメータ名となります。

@see 2045

Net::IMAP::BodyTypeMessage#param -> { String => String } | nil (54913.0)

MIME のボディパラメータをハッシュテーブルで返します。

MIME のボディパラメータをハッシュテーブルで返します。

ハッシュテーブルのキーがパラメータ名となります。

@see 2045

Net::IMAP::BodyTypeMultipart#param -> { String => String } (54913.0)

MIME のボディパラメータをハッシュテーブルで返します。

MIME のボディパラメータをハッシュテーブルで返します。

ハッシュテーブルのキーがパラメータ名となります。

@see 2045

Net::IMAP::BodyTypeText#param -> { String => String } | nil (54913.0)

MIME のボディパラメータをハッシュテーブルで返します。

MIME のボディパラメータをハッシュテーブルで返します。

ハッシュテーブルのキーがパラメータ名となります。

@see 2045

Net::IMAP::ContentDisposition#param -> { String => String } | nil (54913.0)

Content-Disposition フィールドのパラメータをハッシュテーブルで 返します。

Content-Disposition フィールドのパラメータをハッシュテーブルで
返します。

ハッシュテーブルのキーは以下のような値を取ります。詳しくは
2183 などを見てください。
* "FILENAME"
* "CREATION-DATE"
* "MODIFICATION-DATE"
* "READ-DAT"
* "SIZE"

絞り込み条件を変える

String#partition(sep) -> [String, String, String] (27967.0)

セパレータ sep が最初に登場する部分で self を 3 つに分割し、 [最初のセパレータより前の部分, セパレータ, それ以降の部分] の 3 要素の配列を返します。

セパレータ sep が最初に登場する部分で self を 3 つに分割し、
[最初のセパレータより前の部分, セパレータ, それ以降の部分]
の 3 要素の配列を返します。

self がセパレータを含まないときは、
返り値の第 2 要素と第 3 要素が空文字列になります。

@param sep セパレータを表す文字列か正規表現を指定します。

//emlist[例][ruby]{
p "axaxa".partition("x") # => ["a", "x", "axa"]
p "aaaaa".partition("x") # => ["aaaaa", "", ""]
p ...

String#rpartition(sep) -> [String, String, String] (27967.0)

セパレータ sep が最後に登場する部分で self を 3 つに分割し、 [最後のセパレータより前の部分, セパレータ, それ以降の部分] の 3 要素の配列を返します。

セパレータ sep が最後に登場する部分で self を 3 つに分割し、
[最後のセパレータより前の部分, セパレータ, それ以降の部分]
の 3 要素の配列を返します。

self がセパレータを含まないときは、
返り値の第 1 要素と第 2 要素が空文字列になります。

@param sep セパレータを表す文字列か正規表現を指定します。

//emlist[例][ruby]{
p "axaxa".rpartition("x") # => ["axa", "x", "a"]
p "aaaaa".rpartition("x") # => ["", "", "aaaaa"]
...

String#scan(pattern) -> [String] | [[String]] (27631.0)

self に対して pattern を繰り返しマッチし、 マッチした部分文字列の配列を返します。

self に対して pattern を繰り返しマッチし、
マッチした部分文字列の配列を返します。

pattern が正規表現で括弧を含む場合は、
括弧で括られたパターンにマッチした部分文字列の配列の配列を返します。

@param pattern 探索する部分文字列または正規表現

//emlist[例][ruby]{
p "foobar".scan(/../) # => ["fo", "ob", "ar"]
p "foobar".scan("o") # => ["o", "o"]
p "foobarbazfoobarbaz".sc...

String#upcase(*options) -> String (27487.0)

全ての小文字を対応する大文字に置き換えた文字列を返します。 どの文字がどう置き換えられるかは、オプションの有無や文字列のエンコーディングに依存します。

全ての小文字を対応する大文字に置き換えた文字列を返します。
どの文字がどう置き換えられるかは、オプションの有無や文字列のエンコーディングに依存します。

@param options オプションの詳細は String#downcase を参照してください。

//emlist[例][ruby]{
p "stRIng? STring.".upcase # => "STRING? STRING."
//}

@see String#upcase!, String#downcase,
String#swapcase, String#capitalize

String#downcase(*options) -> String (27469.0)

全ての大文字を対応する小文字に置き換えた文字列を返します。 どの文字がどう置き換えられるかは、オプションの有無や文字列のエンコーディングに依存します。

全ての大文字を対応する小文字に置き換えた文字列を返します。
どの文字がどう置き換えられるかは、オプションの有無や文字列のエンコーディングに依存します。

@param options オプションの意味は以下の通りです。

: オプションなし
完全な Unicode ケースマッピングに対応し、ほとんどの言語に適しています。(例外は以下の :turkic,
:lithuanian オプションを参照)
Unicode 標準の表 3-14 で説明されている、コンテキスト依存のケースマッピングは、現在サポートされていません。

: :ascii
ASCII の範囲内のみ (A-Z, a...

絞り込み条件を変える

String#capitalize(*options) -> String (27415.0)

文字列先頭の文字を大文字に、残りを小文字に変更した文字列を返します。

文字列先頭の文字を大文字に、残りを小文字に変更した文字列を返します。

@param options オプションの詳細は String#downcase を参照してください。

//emlist[例][ruby]{
p "foobar--".capitalize # => "Foobar--"
p "fooBAR--".capitalize # => "Foobar--"
p "FOOBAR--".capitalize # => "Foobar--"
//}

@see String#capitalize!, String#upcase,
String#downcase...

String#delete_suffix(suffix) -> String (27415.0)

文字列の末尾から suffix を削除した文字列のコピーを返します。

文字列の末尾から suffix を削除した文字列のコピーを返します。

@param suffix 末尾から削除する文字列を指定します。

@return 文字列の末尾から suffix を削除した文字列のコピー

//emlist[][ruby]{
"hello".delete_suffix("llo") # => "he"
"hello".delete_suffix("hel") # => "hello"
//}

@see String#chomp
@see String#chop
@see String#delete_prefix
@see String#delete_suffix!
...

String#swapcase(*options) -> String (27415.0)

大文字を小文字に、小文字を大文字に変更した文字列を返します。

大文字を小文字に、小文字を大文字に変更した文字列を返します。

@param options オプションの詳細は String#downcase を参照してください。

//emlist[例][ruby]{
p "ABCxyz".swapcase # => "abcXYZ"
p "Access".swapcase # => "aCCESS"
//}

@see String#swapcase!, String#upcase, String#downcase, String#capitalize

String#encode(**options) -> String (27403.0)

self を指定したエンコーディングに変換した文字列を作成して返します。引数 を2つ与えた場合、第二引数は変換元のエンコーディングを意味します。さもな くば self のエンコーディングが使われます。 無引数の場合は、Encoding.default_internal が nil でなければそれが変換先のエンコーディングになり、かつ :invalid => :replace と :undef => :replace が指定されたと見なされ、nil ならば変換は行われません。

self を指定したエンコーディングに変換した文字列を作成して返します。引数
を2つ与えた場合、第二引数は変換元のエンコーディングを意味します。さもな
くば self のエンコーディングが使われます。
無引数の場合は、Encoding.default_internal が nil でなければそれが変換先のエンコーディングになり、かつ :invalid => :replace と :undef => :replace が指定されたと見なされ、nil ならば変換は行われません。

@param encoding 変換先のエンコーディングを表す文字列か Encoding オブジェクトを...

String#encode(encoding, **options) -> String (27403.0)

self を指定したエンコーディングに変換した文字列を作成して返します。引数 を2つ与えた場合、第二引数は変換元のエンコーディングを意味します。さもな くば self のエンコーディングが使われます。 無引数の場合は、Encoding.default_internal が nil でなければそれが変換先のエンコーディングになり、かつ :invalid => :replace と :undef => :replace が指定されたと見なされ、nil ならば変換は行われません。

self を指定したエンコーディングに変換した文字列を作成して返します。引数
を2つ与えた場合、第二引数は変換元のエンコーディングを意味します。さもな
くば self のエンコーディングが使われます。
無引数の場合は、Encoding.default_internal が nil でなければそれが変換先のエンコーディングになり、かつ :invalid => :replace と :undef => :replace が指定されたと見なされ、nil ならば変換は行われません。

@param encoding 変換先のエンコーディングを表す文字列か Encoding オブジェクトを...

絞り込み条件を変える

String#encode(encoding, from_encoding, **options) -> String (27403.0)

self を指定したエンコーディングに変換した文字列を作成して返します。引数 を2つ与えた場合、第二引数は変換元のエンコーディングを意味します。さもな くば self のエンコーディングが使われます。 無引数の場合は、Encoding.default_internal が nil でなければそれが変換先のエンコーディングになり、かつ :invalid => :replace と :undef => :replace が指定されたと見なされ、nil ならば変換は行われません。

self を指定したエンコーディングに変換した文字列を作成して返します。引数
を2つ与えた場合、第二引数は変換元のエンコーディングを意味します。さもな
くば self のエンコーディングが使われます。
無引数の場合は、Encoding.default_internal が nil でなければそれが変換先のエンコーディングになり、かつ :invalid => :replace と :undef => :replace が指定されたと見なされ、nil ならば変換は行われません。

@param encoding 変換先のエンコーディングを表す文字列か Encoding オブジェクトを...

String#[](nth) -> String | nil (27400.0)

nth 番目の文字を返します。 nth が負の場合は文字列の末尾から数えます。 つまり、 self.size + nth 番目の文字を返します。

nth 番目の文字を返します。
nth が負の場合は文字列の末尾から数えます。
つまり、 self.size + nth 番目の文字を返します。

nth が範囲外を指す場合は nil を返します。

@param nth 文字の位置を表す整数
@return 指定した位置の文字を表す String オブジェクト

//emlist[例][ruby]{
p 'bar'[2] # => "r"
p 'bar'[2] == ?r # => true
p 'bar'[-1] # => "r"
p 'bar'[3] # => nil
p 'bar'[-4] ...

String#[](nth, len) -> String | nil (27400.0)

nth 文字目から長さ len 文字の部分文字列を新しく作って返します。 nth が負の場合は文字列の末尾から数えます。

nth 文字目から長さ len 文字の部分文字列を新しく作って返します。
nth が負の場合は文字列の末尾から数えます。

@param nth 取得したい文字列の開始インデックスを整数で指定します。
@param len 取得したい文字列の長さを正の整数で指定します。

@return nth が範囲外を指す場合は nil を返します。

//emlist[例][ruby]{
str0 = "bar"
str0[2, 1] #=> "r"
str0[2, 0] #=> ""
str0[2, 100] #=> "r" (右側を超えても...

String#[](regexp, name) -> String (27400.0)

正規表現 regexp の name で指定した名前付きキャプチャにマッチする最初の 部分文字列を返します。正規表現が self にマッチしなかった場合は nil を返 します。

正規表現 regexp の name で指定した名前付きキャプチャにマッチする最初の
部分文字列を返します。正規表現が self にマッチしなかった場合は nil を返
します。

@param regexp 正規表現を指定します。
@param name 取得したい部分文字列のパターンを示す正規表現レジスタを示す名前

@raise IndexError name に対応する括弧がない場合に発生します。

//emlist[例][ruby]{
s = "FooBar"
s[/(?<foo>[A-Z]..)(?<bar>[A-Z]..)/] # => "FooBar"
s[/(...

String#[](regexp, nth = 0) -> String (27400.0)

正規表現 regexp の nth 番目の括弧にマッチする最初の部分文字列を返します。 nth を省略したときや 0 の場合は正規表現がマッチした部分文字列全体を返します。 正規表現が self にマッチしなかった場合や nth に対応する括弧がないときは nil を返します。

正規表現 regexp の nth 番目の括弧にマッチする最初の部分文字列を返します。
nth を省略したときや 0 の場合は正規表現がマッチした部分文字列全体を返します。
正規表現が self にマッチしなかった場合や nth に対応する括弧がないときは nil を返します。

このメソッドを実行すると、
マッチ結果に関する情報が組み込み変数 $~ に設定されます。

@param regexp 取得したい文字列のパターンを示す正規表現
@param nth 取得したい正規表現レジスタのインデックス。整数

//emlist[例][ruby]{
p "foobar"[/b...

絞り込み条件を変える

String#gsub(pattern, replace) -> String (27400.0)

文字列中で pattern にマッチする部分全てを 文字列 replace で置き換えた文字列を生成して返します。

文字列中で pattern にマッチする部分全てを
文字列 replace で置き換えた文字列を生成して返します。

置換文字列 replace 中の \& と \0 はマッチした部分文字列に、
\1 ... \9 は n 番目の括弧の内容に置き換えられます。
置換文字列内では \`、\'、\+ も使えます。
これらは $`、$'、$+ に対応します。

@param pattern 置き換える文字列のパターンを表す文字列か正規表現。
文字列を指定した場合は全く同じ文字列にだけマッチする
@param replace pattern で指定した...

String#slice(nth) -> String | nil (27400.0)

nth 番目の文字を返します。 nth が負の場合は文字列の末尾から数えます。 つまり、 self.size + nth 番目の文字を返します。

nth 番目の文字を返します。
nth が負の場合は文字列の末尾から数えます。
つまり、 self.size + nth 番目の文字を返します。

nth が範囲外を指す場合は nil を返します。

@param nth 文字の位置を表す整数
@return 指定した位置の文字を表す String オブジェクト

//emlist[例][ruby]{
p 'bar'[2] # => "r"
p 'bar'[2] == ?r # => true
p 'bar'[-1] # => "r"
p 'bar'[3] # => nil
p 'bar'[-4] ...

String#slice(nth, len) -> String | nil (27400.0)

nth 文字目から長さ len 文字の部分文字列を新しく作って返します。 nth が負の場合は文字列の末尾から数えます。

nth 文字目から長さ len 文字の部分文字列を新しく作って返します。
nth が負の場合は文字列の末尾から数えます。

@param nth 取得したい文字列の開始インデックスを整数で指定します。
@param len 取得したい文字列の長さを正の整数で指定します。

@return nth が範囲外を指す場合は nil を返します。

//emlist[例][ruby]{
str0 = "bar"
str0[2, 1] #=> "r"
str0[2, 0] #=> ""
str0[2, 100] #=> "r" (右側を超えても...

String#slice(regexp, name) -> String (27400.0)

正規表現 regexp の name で指定した名前付きキャプチャにマッチする最初の 部分文字列を返します。正規表現が self にマッチしなかった場合は nil を返 します。

正規表現 regexp の name で指定した名前付きキャプチャにマッチする最初の
部分文字列を返します。正規表現が self にマッチしなかった場合は nil を返
します。

@param regexp 正規表現を指定します。
@param name 取得したい部分文字列のパターンを示す正規表現レジスタを示す名前

@raise IndexError name に対応する括弧がない場合に発生します。

//emlist[例][ruby]{
s = "FooBar"
s[/(?<foo>[A-Z]..)(?<bar>[A-Z]..)/] # => "FooBar"
s[/(...

String#slice(regexp, nth = 0) -> String (27400.0)

正規表現 regexp の nth 番目の括弧にマッチする最初の部分文字列を返します。 nth を省略したときや 0 の場合は正規表現がマッチした部分文字列全体を返します。 正規表現が self にマッチしなかった場合や nth に対応する括弧がないときは nil を返します。

正規表現 regexp の nth 番目の括弧にマッチする最初の部分文字列を返します。
nth を省略したときや 0 の場合は正規表現がマッチした部分文字列全体を返します。
正規表現が self にマッチしなかった場合や nth に対応する括弧がないときは nil を返します。

このメソッドを実行すると、
マッチ結果に関する情報が組み込み変数 $~ に設定されます。

@param regexp 取得したい文字列のパターンを示す正規表現
@param nth 取得したい正規表現レジスタのインデックス。整数

//emlist[例][ruby]{
p "foobar"[/b...

絞り込み条件を変える

String#lines(rs = $/, chomp: false) -> [String] (27397.0)

文字列中の各行を文字列の配列で返します。(self.each_line.to_a と同じです)

文字列中の各行を文字列の配列で返します。(self.each_line.to_a と同じです)

//emlist[][ruby]{
"aa\nbb\ncc\n".lines # => ["aa\n", "bb\n", "cc\n"]
//}

行の区切りは rs に指定した文字列で、 そのデフォルト値は変数 $/ の値です。
各 line には区切りの文字列も含みます。

rs に nil を指定すると行区切りなしとみなします。 rs に空文字列 "" を指
定すると「パラグラフモード」になり、 改行コードが 2 つ以上連続するとこ
ろで文字列を分割します (つまり空行で分割します)。

...

String#[](range) -> String (27385.0)

rangeで指定したインデックスの範囲に含まれる部分文字列を返します。

rangeで指定したインデックスの範囲に含まれる部分文字列を返します。

@param range 取得したい文字列の範囲を示す Range オブジェクト

=== rangeオブジェクトが終端を含む場合

インデックスと文字列の対応については以下の対照図も参照してください。

0 1 2 3 4 5 (インデックス)
-6 -5 -4 -3 -2 -1 (負のインデックス)
| a | b | c | d | e | f |
|<--------->| 'abcdef'[0..2] # => '...

String#[](substr) -> String | nil (27385.0)

self が substr を含む場合、一致した文字列を新しく作って返します。 substr を含まなければ nil を返します。

self が substr を含む場合、一致した文字列を新しく作って返します。
substr を含まなければ nil を返します。

@param substr 取得したい文字列のパターン。文字列

//emlist[例][ruby]{
substr = "bar"
result = "foobar"[substr]
p result # => "bar"
p substr.equal?(result) # => false
//}

String#gsub(pattern) {|matched| .... } -> String (27385.0)

文字列中で pattern にマッチした部分を順番にブロックに渡し、 その実行結果で置き換えた文字列を生成して返します。 ブロックなしの場合と違い、ブロックの中からは 組み込み変数 $1, $2, $3, ... を問題なく参照できます。

文字列中で pattern にマッチした部分を順番にブロックに渡し、
その実行結果で置き換えた文字列を生成して返します。
ブロックなしの場合と違い、ブロックの中からは
組み込み変数 $1, $2, $3, ... を問題なく参照できます。

@param pattern 置き換える文字列のパターンを表す文字列か正規表現。
文字列を指定した場合は全く同じ文字列にだけマッチする
@return 新しい文字列

//emlist[例][ruby]{
p 'abcabc'.gsub(/[bc]/) {|s| s.upcase } #=> "aBCaBC"
...

String#slice(range) -> String (27385.0)

rangeで指定したインデックスの範囲に含まれる部分文字列を返します。

rangeで指定したインデックスの範囲に含まれる部分文字列を返します。

@param range 取得したい文字列の範囲を示す Range オブジェクト

=== rangeオブジェクトが終端を含む場合

インデックスと文字列の対応については以下の対照図も参照してください。

0 1 2 3 4 5 (インデックス)
-6 -5 -4 -3 -2 -1 (負のインデックス)
| a | b | c | d | e | f |
|<--------->| 'abcdef'[0..2] # => '...

絞り込み条件を変える

String#slice(substr) -> String | nil (27385.0)

self が substr を含む場合、一致した文字列を新しく作って返します。 substr を含まなければ nil を返します。

self が substr を含む場合、一致した文字列を新しく作って返します。
substr を含まなければ nil を返します。

@param substr 取得したい文字列のパターン。文字列

//emlist[例][ruby]{
substr = "bar"
result = "foobar"[substr]
p result # => "bar"
p substr.equal?(result) # => false
//}

String#byteslice(nth, len=1) -> String | nil (27379.0)

nth バイト目から長さ len バイトの部分文字列を新しく作って返します。 nth が負の場合は文字列の末尾から数えます。引数が範囲外を指定した場合は nil を返します。

nth バイト目から長さ len バイトの部分文字列を新しく作って返します。
nth が負の場合は文字列の末尾から数えます。引数が範囲外を指定した場合は
nil を返します。

@param nth 取得したい文字列の開始バイトを整数で指定します。

@param len 取得したい文字列の長さを正の整数で指定します。

@return 切り出した文字列を返します。戻り値の文字エンコーディングは自身
と同じです。

//emlist[例][ruby]{
"hello".byteslice(1, 2) # => "el"
"\u3042\u3044\u...

String#center(width, padding = &#39; &#39;) -> String (27379.0)

長さ width の文字列に self を中央寄せした文字列を返します。 self の長さが width より長い時には元の文字列の複製を返します。 また、第 2 引数 padding を指定したときは 空白文字の代わりに padding を詰めます。

長さ width の文字列に self を中央寄せした文字列を返します。
self の長さが width より長い時には元の文字列の複製を返します。
また、第 2 引数 padding を指定したときは
空白文字の代わりに padding を詰めます。

@param width 返り値の文字列の最小の長さ
@param padding 長さが width になるまで self の両側に詰める文字

//emlist[例][ruby]{
p "foo".center(10) # => " foo "
p "foo".center(9) # ...

String#delete_prefix(prefix) -> String (27379.0)

文字列の先頭から prefix を削除した文字列のコピーを返します。

文字列の先頭から prefix を削除した文字列のコピーを返します。

@param prefix 先頭から削除する文字列を指定します。

@return 文字列の先頭から prefix を削除した文字列のコピー

//emlist[][ruby]{
"hello".delete_prefix("hel") # => "lo"
"hello".delete_prefix("llo") # => "hello"
//}

@see String#delete_prefix!
@see String#delete_suffix
@see String#start_with?

String#ljust(width, padding = &#39; &#39;) -> String (27379.0)

長さ width の文字列に self を左詰めした文字列を返します。 self の長さが width より長い時には元の文字列の複製を返します。 また、第 2 引数 padding を指定したときは 空白文字の代わりに padding を詰めます。

長さ width の文字列に self を左詰めした文字列を返します。
self の長さが width より長い時には元の文字列の複製を返します。
また、第 2 引数 padding を指定したときは
空白文字の代わりに padding を詰めます。

@param width 返り値の文字列の最小の長さ
@param padding 長さが width になるまで self の右側に詰める文字

//emlist[例][ruby]{
p "foo".ljust(10) # => "foo "
p "foo".ljust(9) # =...

絞り込み条件を変える

String#rjust(width, padding = &#39; &#39;) -> String (27379.0)

長さ width の文字列に self を右詰めした文字列を返します。 self の長さが width より長い時には元の文字列の複製を返します。 また、第 2 引数 padding を指定したときは 空白文字の代わりに padding を詰めます。

長さ width の文字列に self を右詰めした文字列を返します。
self の長さが width より長い時には元の文字列の複製を返します。
また、第 2 引数 padding を指定したときは
空白文字の代わりに padding を詰めます。

@param width 返り値の文字列の最小の長さ
@param padding 長さが width になるまで self の左側に詰める文字

//emlist[例][ruby]{
p "foo".rjust(10) # => " foo"
p "foo".rjust(9) # =...

String#split(sep = $;, limit = 0) -> [String] (27379.0)

第 1 引数 sep で指定されたセパレータによって文字列を limit 個まで分割し、 結果を文字列の配列で返します。

第 1 引数 sep で指定されたセパレータによって文字列を limit 個まで分割し、
結果を文字列の配列で返します。

第 1 引数 sep は以下のいずれかです。

: 正規表現
正規表現にマッチする部分で分割する。
特に、括弧によるグルーピングがあればそのグループにマッチした
文字列も結果の配列に含まれる (後述)。
: 文字列
その文字列自体にマッチする部分で分割する。
: 1 バイトの空白文字 ' '
先頭と末尾の空白を除いたうえで、空白文字列で分割する。
: nil
常に $; で分割する。 $; も nil の場合は、先頭と末尾...

String#sub(pattern, replace) -> String (27379.0)

文字列中で pattern にマッチした最初の部分を 文字列 replace で置き換えた文字列を生成して返します。

文字列中で pattern にマッチした最初の部分を
文字列 replace で置き換えた文字列を生成して返します。

置換文字列 replace 中の \& と \0 はマッチした部分文字列に、
\1 ... \9 は n 番目の括弧の内容に置き換えられます。
置換文字列内では \`、\'、\+ も使えます。
これらは $`、$'、$+ に対応します。

@param pattern 置き換える文字列のパターンを表す文字列か正規表現。
文字列を指定した場合は全く同じ文字列にだけマッチする
@param replace pattern で指定し...

String#tr(pattern, replace) -> String (27379.0)

pattern 文字列に含まれる文字を検索し、 それを replace 文字列の対応する文字に置き換えます。

pattern 文字列に含まれる文字を検索し、
それを replace 文字列の対応する文字に置き換えます。

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

replace に対しても `-' による範囲指定が可能です。

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

String#sub!(pattern, hash) -> String (27376.0)

文字列中の pattern にマッチした部分をキーにして hash を引いた値で破壊的に置き換えます。

文字列中の pattern にマッチした部分をキーにして hash を引いた値で破壊的に置き換えます。

@param pattern 置き換える文字列のパターン
@param hash 置き換える文字列を与えるハッシュ
@return 置換した場合は self、置換しなかった場合は nil

絞り込み条件を変える

String#gsub(pattern, hash) -> String (27370.0)

文字列中の pattern にマッチした部分をキーにして hash を引いた値で置き換えます。

文字列中の pattern にマッチした部分をキーにして hash を引いた値で置き換えます。

@param pattern 置き換える文字列のパターン
@param hash 置き換える文字列を与えるハッシュ

//emlist[例][ruby]{
hash = {'b'=>'B', 'c'=>'C'}
p "abcabc".gsub(/[bc]/){hash[$&]} #=> "aBCaBC"
p "abcabc".gsub(/[bc]/, hash) #=> "aBCaBC"
//}

String#byteslice(nth) -> String | nil (27364.0)

nth バイト目の文字を返します。nth が負の場合は文字列の末尾から数えます。 引数が範囲外を指定した場合は nil を返します。

nth バイト目の文字を返します。nth が負の場合は文字列の末尾から数えます。
引数が範囲外を指定した場合は nil を返します。

@param nth 文字の位置を表す整数を指定します。

@return 切り出した文字列を返します。戻り値の文字エンコーディングは自身
と同じです。

//emlist[例][ruby]{
"hello".byteslice(1) # => "e"
"hello".byteslice(-1) # => "o"
"\u3042".byteslice(0) # => "\xE3"
"\u3042".byteslice(1) # => "\x...

String#byteslice(range) -> String | nil (27364.0)

range で指定したバイトの範囲に含まれる部分文字列を返します。引数が範囲 外を指定した場合は nil を返します。

range で指定したバイトの範囲に含まれる部分文字列を返します。引数が範囲
外を指定した場合は nil を返します。

@param range 取得したい文字列の範囲を示す Range オブジェクト

@return 切り出した文字列を返します。戻り値の文字エンコーディングは自身
と同じです。

//emlist[例][ruby]{
"hello".byteslice(1..2) # => "el"
"\x03\u3042\xff".byteslice(1..3) # => "\u3042"
//}

@see String#slice

String#sub(pattern) {|matched| .... } -> String (27364.0)

文字列中で pattern にマッチした最初の部分をブロックに渡し、 その評価結果で置き換えた新しい文字列を返します。 ブロックなしの sub と違い、ブロックの中からは 組み込み変数 $1, $2, $3, ... を問題なく参照できます。

文字列中で pattern にマッチした最初の部分をブロックに渡し、
その評価結果で置き換えた新しい文字列を返します。
ブロックなしの sub と違い、ブロックの中からは
組み込み変数 $1, $2, $3, ... を問題なく参照できます。

@param pattern 置き換える文字列のパターンを表す文字列か正規表現。
文字列を指定した場合は全く同じ文字列にだけマッチする

//emlist[例][ruby]{
p 'abcabc'.sub(/b/) {|s| s.upcase } #=> "aBcabc"
p 'abcabc'.sub(/b...

String#sub(pattern, hash) -> String (27364.0)

文字列中の pattern にマッチした部分をキーにして hash を引いた値で置き換えます。

文字列中の pattern にマッチした部分をキーにして hash を引いた値で置き換えます。

@param pattern 置き換える文字列のパターン
@param hash 置き換える文字列を与えるハッシュ

//emlist[例][ruby]{
hash = {'b'=>'B', 'c'=>'C'}
p "abcabc".sub(/[bc]/){hash[$&]} #=> "aBCabc"
p "abcabc".sub(/[bc]/, hash) #=> "aBCabc"
//}

絞り込み条件を変える

String#tr_s(pattern, replace) -> String (27361.0)

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

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

pattern の形式は tr(1) と同じです。
つまり「a-c」は a から c を意味し、
"^0-9" のように文字列の先頭が「^」の場合は指定した文字以外が置換の対象になります。

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

「-」は文字列の両端にない場合にだけ範囲指定の意味になります。
同様に、「^」もその効果は文字列の先頭にあるときだけです。
また、「-」、「^」...

String#unicode_normalize(form = :nfc) -> String (27361.0)

self を NFC、NFD、NFKC、NFKD のいずれかの正規化形式で Unicode 正規化し た文字列を返します。

self を NFC、NFD、NFKC、NFKD のいずれかの正規化形式で Unicode 正規化し
た文字列を返します。

@param form 正規化形式を :nfc、:nfd、:nfkc、:nfkd のいずれかで指定しま
す。省略した場合は :nfc になります。

@raise Encoding::CompatibilityError self が Unicode 文字列ではない場合
に発生します。

このメソッドでの "Unicode 文字列" とは、UTF-8、UTF-16BE/LE...

StringScanner#string=(str) (27361.0)

スキャン対象の文字列を str に変更して、マッチ記録を捨てます。

スキャン対象の文字列を str に変更して、マッチ記録を捨てます。

@param str スキャン対象の文字列を str に変更して、マッチ記録を捨てます。

@return str を返します。

//emlist[例][ruby]{
require 'strscan'

str = '0123'
s = StringScanner.new('test string')
s.string = str # => "0123"
s.scan(/\w+/) # => "0123"
//}

String#scrub -> String (27349.0)

self が不正なバイト列を含む場合に別の文字列に置き換えた新しい文字列を返します。

self が不正なバイト列を含む場合に別の文字列に置き換えた新しい文字列を返します。

@param repl 不正なバイト列を置き換える文字列を指定します。省略した場合
は self の文字エンコーディングが Encoding::UTF_16BE,
Encoding::UTF_16LE, Encoding::UTF_32BE,
Encoding::UTF_32LE, Encoding::UTF_8 のいずれか
の場合は "\uFFFD" を表す文字で、それ以外の場合は "?" で置き
...

String#scrub {|bytes| ... } -> String (27349.0)

self が不正なバイト列を含む場合に別の文字列に置き換えた新しい文字列を返します。

self が不正なバイト列を含む場合に別の文字列に置き換えた新しい文字列を返します。

@param repl 不正なバイト列を置き換える文字列を指定します。省略した場合
は self の文字エンコーディングが Encoding::UTF_16BE,
Encoding::UTF_16LE, Encoding::UTF_32BE,
Encoding::UTF_32LE, Encoding::UTF_8 のいずれか
の場合は "\uFFFD" を表す文字で、それ以外の場合は "?" で置き
...

絞り込み条件を変える

String#scrub! -> String (27349.0)

self が不正なバイト列を含む場合に別の文字列に置き換えます。常に self を返します。

self が不正なバイト列を含む場合に別の文字列に置き換えます。常に self を返します。

@param repl 不正なバイト列を置き換える文字列を指定します。省略した場合
は self の文字エンコーディングが Encoding::UTF_16BE,
Encoding::UTF_16LE, Encoding::UTF_32BE,
Encoding::UTF_32LE, Encoding::UTF_8 のいずれか
の場合は "\uFFFD" を表す文字で、それ以外の場合は "?" で置き
...

String#scrub! {|bytes| ... } -> String (27349.0)

self が不正なバイト列を含む場合に別の文字列に置き換えます。常に self を返します。

self が不正なバイト列を含む場合に別の文字列に置き換えます。常に self を返します。

@param repl 不正なバイト列を置き換える文字列を指定します。省略した場合
は self の文字エンコーディングが Encoding::UTF_16BE,
Encoding::UTF_16LE, Encoding::UTF_32BE,
Encoding::UTF_32LE, Encoding::UTF_8 のいずれか
の場合は "\uFFFD" を表す文字で、それ以外の場合は "?" で置き
...

String#scrub!(repl) -> String (27349.0)

self が不正なバイト列を含む場合に別の文字列に置き換えます。常に self を返します。

self が不正なバイト列を含む場合に別の文字列に置き換えます。常に self を返します。

@param repl 不正なバイト列を置き換える文字列を指定します。省略した場合
は self の文字エンコーディングが Encoding::UTF_16BE,
Encoding::UTF_16LE, Encoding::UTF_32BE,
Encoding::UTF_32LE, Encoding::UTF_8 のいずれか
の場合は "\uFFFD" を表す文字で、それ以外の場合は "?" で置き
...

String#scrub(repl) -> String (27349.0)

self が不正なバイト列を含む場合に別の文字列に置き換えた新しい文字列を返します。

self が不正なバイト列を含む場合に別の文字列に置き換えた新しい文字列を返します。

@param repl 不正なバイト列を置き換える文字列を指定します。省略した場合
は self の文字エンコーディングが Encoding::UTF_16BE,
Encoding::UTF_16LE, Encoding::UTF_32BE,
Encoding::UTF_32LE, Encoding::UTF_8 のいずれか
の場合は "\uFFFD" を表す文字で、それ以外の場合は "?" で置き
...

String#%(args) -> String (27343.0)

printf と同じ規則に従って args をフォーマットします。

printf と同じ規則に従って args をフォーマットします。

args が配列であれば Kernel.#sprintf(self, *args) と同じです。
それ以外の場合は Kernel.#sprintf(self, args) と同じです。

@param args フォーマットする値、もしくはその配列
@return フォーマットされた文字列

//emlist[例][ruby]{
p "i = %d" % 10 # => "i = 10"
p "i = %x" % 10 # => "i = a"
p "i = %o" % 10...

絞り込み条件を変える

String#+(other) -> String (27343.0)

文字列と other を連結した新しい文字列を返します。

文字列と other を連結した新しい文字列を返します。

@param other 文字列
@return self と other を連結した文字列

//emlist[例][ruby]{
p "str" + "ing" # => "string"

a = "abc"
b = "def"
p a + b # => "abcdef"
p a # => "abc" (変化なし)
p b # => "def"
//}

String#crypt(salt) -> String (27343.0)

self と salt から暗号化された文字列を生成して返します。 salt には英数字、ドット (「.」)、スラッシュ (「/」) から構成される、 2 バイト以上の文字列を指定します。

self と salt から暗号化された文字列を生成して返します。
salt には英数字、ドット (「.」)、スラッシュ (「/」) から構成される、
2 バイト以上の文字列を指定します。

暗号化された文字列から暗号化前の文字列 (self) を求めることは一般に困難で、
self を知っている者のみが同じ暗号化された文字列を生成できます。
このことから self を知っているかどうかの認証に使うことが出来ます。

salt には、以下の様になるべくランダムな文字列を選ぶべきです。
他にも 29297 などがあります。

注意:

* Ruby 2.6 から非推奨になったため、引き続き...

String#delete(*strs) -> String (27343.0)

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

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

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

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

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

@param strs 削除する文字列を...

String#kconv(out_code, in_code = Kconv::AUTO) -> String (27343.0)

self のエンコーディングを out_code に変換した文字列を 返します。 out_code in_code は Kconv の定数で指定します。

self のエンコーディングを out_code に変換した文字列を
返します。
out_code in_code は Kconv の定数で指定します。

このメソッドは MIME エンコードされた文字列を展開し、
いわゆる半角カナを全角に変換します。
これらを変換したくない場合は、 NKF.#nkf を使ってください。

@param out_code 変換後のエンコーディングを Kconv の定数で指定します。
@param in_code 変換する文字列のエンコーディングを Kconv の定数で指定します。

@see Kconv.#kconv

String#prepend(*arguments) -> String (27331.0)

複数の文字列を先頭に破壊的に追加します。

複数の文字列を先頭に破壊的に追加します。

@param arguments 追加したい文字列を指定します。

//emlist[例][ruby]{
a = "!!!"
a.prepend # => "!!!"
a # => "!!!"

a = "!!!"
a.prepend "hello ", "world" # => "hello world!!!"
a # => "hello world!!!"
//}

絞り込み条件を変える

String#prepend(other_str) -> String (27331.0)

文字列 other_str を先頭に破壊的に追加します。

文字列 other_str を先頭に破壊的に追加します。

@param other_str 追加したい文字列を指定します。

//emlist[例][ruby]{
a = "world"
a.prepend("hello ") # => "hello world"
a # => "hello world"
//}

String#*(times) -> String (27325.0)

文字列の内容を times 回だけ繰り返した新しい文字列を作成して返します。

文字列の内容を times 回だけ繰り返した新しい文字列を作成して返します。

@param times 整数
@return self を times 回繰り返した新しい文字列

@raise ArgumentError 引数に負数を指定したときに発生します。

//emlist[例][ruby]{
p "str" * 3 # => "strstrstr"

str = "abc"
p str * 4 # => "abcabcabcabc"
p str * 0 # => ""
p str # => "abc" (変化なし)
//}

String#ext(newext = &#39;&#39;) -> String (27325.0)

自身の拡張子を与えられた拡張子で置き換えます。

自身の拡張子を与えられた拡張子で置き換えます。

自身に拡張子が無い場合は、与えられた拡張子を追加します。
与えられた拡張子が空文字列の場合は、自身の拡張子を削除します。

@param newext 新しい拡張子を指定します。

例:
require "rake"

"hoge".ext(".rb") # => "hoge.rb"
"hoge.rb".ext(".erb") # => "hoge.erb"
"hoge.tar.gz".ext(".bz2") # => "hoge.tar.bz2"

String#parse_csv(**options) -> [String] (27325.0)

CSV.parse_line(self, options) と同様です。

CSV.parse_line(self, options) と同様です。

1 行の CSV 文字列を、文字列の配列に変換するためのショートカットです。

@param options CSV.new と同様のオプションを指定します。

//emlist[][ruby]{
require "csv"

p "Matz,Ruby\n".parse_csv # => ["Matz", "Ruby"]
p "Matz|Ruby\r\n".parse_csv(col_sep: '|', row_sep: "\r\n") # => ...

String#pathmap_replace(patterns) { ... } -> String (27325.0)

与えられたパスを前もって置き換えます。

与えられたパスを前もって置き換えます。

@param patterns 'pat1,rep1;pat2,rep2;...' のような形式で置換パターンを指定します。

絞り込み条件を変える

String#squeeze(*chars) -> String (27325.0)

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

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

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

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

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

引数を複数指定した場合は、す...

StringIO#string=(buf) (27325.0)

自身が表す文字列を指定された buf に変更します。

自身が表す文字列を指定された buf に変更します。

buf はバッファとして使われ、書き込みメソッドによって書き換えられます。
自身は読み書き両用になりますが、
buf がフリーズされている場合には読み取り専用になります。
pos と lineno は 0 にセットされます。


@param buf 自身が新たに表す文字列を指定します。

@raise TypeError buf が nil の場合に発生します。

String#eql?(other) -> bool (27274.0)

文字列の内容が文字列 other の内容と等しいときに true を返します。 等しくなければ false を返します。

文字列の内容が文字列 other の内容と等しいときに true を返します。
等しくなければ false を返します。

このメソッドは文字列の内容を比較します。
同一のオブジェクトかどうかを比較するわけではありません。
つまり、"string".eql?(str) という式を実行した場合には、
str が "string" という内容の文字列でありさえすれば常に true を返します。
同一のオブジェクトであるかどうかを判定したいときは
Object#equal? を使ってください。

アルファベットの大文字小文字を無視して比較したい場合は
String#casecmp? を使ってくださ...

String#upcase!(*options) -> self | nil (27184.0)

全ての小文字を対応する大文字に破壊的に置き換えます。 どの文字がどう置き換えられるかは、オプションの有無や文字列のエンコーディングに依存します。

全ての小文字を対応する大文字に破壊的に置き換えます。
どの文字がどう置き換えられるかは、オプションの有無や文字列のエンコーディングに依存します。

@param options オプションの詳細は String#downcase を参照してください。

//emlist[例][ruby]{
buf = "stRIng? STring."
buf.upcase!
p buf # => "STRING? STRING."
//}

@see String#upcase, String#downcase!,
String#swapcase!, String#capitalize!

String#sub!(pattern, replace) -> self | nil (27181.0)

文字列中で pattern にマッチした最初の部分を文字列 replace へ破壊的に置き換えます。

文字列中で pattern にマッチした最初の部分を文字列 replace へ破壊的に置き換えます。

置換文字列 replace 中の \& と \0 はマッチした部分文字列に、
\1 ... \9 は n 番目の括弧の内容に置き換えられます。
置換文字列内では \`、\'、\+ も使えます。
これらは $`、$'、$+ に対応します。

sub! は通常 self を変更して返しますが、
置換が起こらなかった場合は nil を返します。

@param pattern 置き換える文字列のパターンを表す文字列か正規表現。
文字列を指定した場合は全く...

絞り込み条件を変える

String#==(other) -> bool (27178.0)

other が文字列の場合、String#eql? と同様に文字列の内容を比較します。

other が文字列の場合、String#eql? と同様に文字列の内容を比較します。

other が文字列でない場合、
other.to_str が定義されていれば
other == self の結果を返します。(ただし、 other.to_str は実行されません。)
そうでなければ false を返します。

@param other 任意のオブジェクト
@return true か false

//emlist[例][ruby]{
stringlike = Object.new

def stringlike.==(other)
"string" == ...

String#===(other) -> bool (27178.0)

other が文字列の場合、String#eql? と同様に文字列の内容を比較します。

other が文字列の場合、String#eql? と同様に文字列の内容を比較します。

other が文字列でない場合、
other.to_str が定義されていれば
other == self の結果を返します。(ただし、 other.to_str は実行されません。)
そうでなければ false を返します。

@param other 任意のオブジェクト
@return true か false

//emlist[例][ruby]{
stringlike = Object.new

def stringlike.==(other)
"string" == ...

String#start_with?(*prefixes) -> bool (27166.0)

self の先頭が prefixes のいずれかであるとき true を返します。

self の先頭が prefixes のいずれかであるとき true を返します。

@param prefixes パターンを表す文字列または正規表現 (のリスト)

//emlist[例][ruby]{
"string".start_with?("str") # => true
"string".start_with?("ing") # => false
"string".start_with?("ing", "str") # => true
"string".start_with?(/\w/) # => true
"strin...

String#gsub!(pattern, replace) -> self | nil (27160.0)

文字列中で pattern にマッチする部分全てを文字列 replace に破壊的に置き換えます。

文字列中で pattern にマッチする部分全てを文字列 replace に破壊的に置き換えます。

置換文字列 replace 中の \& と \0 はマッチした部分文字列に、
\1 ... \9 は n 番目の括弧の内容に置き換えられます。
置換文字列内では \`、\'、\+ も使えます。
これらは $`、$'、$+ に対応します。

gsub! は通常 self を変更して返しますが、
置換が起こらなかった場合は nil を返します。

@param pattern 置き換える文字列のパターンを表す文字列か正規表現。
文字列を指定した場合は全く...

String#downcase!(*options) -> self | nil (27148.0)

全ての大文字を対応する小文字に破壊的に置き換えます。 どの文字がどう置き換えられるかは、オプションの有無や文字列のエンコーディングに依存します。

全ての大文字を対応する小文字に破壊的に置き換えます。
どの文字がどう置き換えられるかは、オプションの有無や文字列のエンコーディングに依存します。

@param options オプションの詳細は String#downcase を参照してください。
@return self を変更して返します。変更が無かった場合は nil を返します。

//emlist[例][ruby]{
str = "STRing?"
str.downcase!
p str # => "string?"
//}

@see String#downcase, String#upcase!, String#swapc...

絞り込み条件を変える

String#[]=(nth, len, val) (27145.0)

nth 番目の文字から len 文字の部分文字列を文字列 val で置き換えます。

nth 番目の文字から len 文字の部分文字列を文字列 val で置き換えます。

len が0 の場合は、単にnthの位置から文字列の追加が行われます。
nth が負の場合は文字列の末尾から数えます。

@param nth 置き換えたい部分文字列の開始インデックス
@param len 置き換えたい部分文字列の長さ
@param val 指定範囲の部分文字列と置き換える文字列

@return val を返します。

//emlist[例][ruby]{
buf = "string"
buf[1, 4] = "!!"
p buf # => "s!!g"

buf ...

String#[]=(substr, val) (27130.0)

文字列中の substr に一致する最初の部分文字列を文字列 val で置き換えます。

文字列中の substr に一致する最初の部分文字列を文字列 val で置き換えます。

@param substr 置き換えたい部分文字列のパターンを示す文字列
@param val 指定範囲の部分文字列と置き換える文字列

@return val を返します。

@raise IndexError self が部分文字列 substr を含まない場合に発生します。

//emlist[例][ruby]{
buf = "string"
buf["trin"] = "!!"
p buf # => "s!!g"

buf = "string"
buf["nosuch...

String#end_with?(*strs) -> bool (27130.0)

self の末尾が strs のいずれかであるとき true を返します。

self の末尾が strs のいずれかであるとき true を返します。

@param strs パターンを表す文字列 (のリスト)

//emlist[例][ruby]{
"string".end_with?("ing") # => true
"string".end_with?("str") # => false
"string".end_with?("str", "ing") # => true
//}

@see String#start_with?
@see String#delete_suffix, String#delete_s...

String#unpack(template) -> Array (27130.0)

Array#pack で生成された文字列を テンプレート文字列 template にしたがってアンパックし、 それらの要素を含む配列を返します。

Array#pack で生成された文字列を
テンプレート文字列 template にしたがってアンパックし、
それらの要素を含む配列を返します。

@param template pack テンプレート文字列
@return オブジェクトの配列


以下にあげるものは、Array#pack、String#unpack、String#unpack1
のテンプレート文字の一覧です。テンプレート文字は後に「長さ」を表す数字
を続けることができます。「長さ」の代わりに`*'とすることで「残り全て」
を表すこともできます。

長さの意味はテンプレート文字により異なりますが大...

String#[]=(nth, val) (27115.0)

nth 番目の文字を文字列 val で置き換えます。

nth 番目の文字を文字列 val で置き換えます。

@param nth 置き換えたい文字の位置を指定します。
@param val 置き換える文字列を指定します。

@return val を返します。

//emlist[例][ruby]{
buf = "string"
buf[1] = "!!"
p buf # => "s!!ring"
//}

絞り込み条件を変える

String#[]=(regexp, name, val) (27115.0)

正規表現 regexp の name で指定した名前付きキャプチャにマッチする最初の 部分文字列を文字列 val で置き換えます。

正規表現 regexp の name で指定した名前付きキャプチャにマッチする最初の
部分文字列を文字列 val で置き換えます。

@param regexp 置き換えたい部分文字列のパターンを示す正規表現
@param name 置き換えたい部分文字列のパターンを示す正規表現レジスタを示す名前
@param val 指定範囲の部分文字列と置き換えたい文字列

@return val を返します。

@raise IndexError name で指定した名前付きキャプチャが存在しない場合に発
生します。

//emlist[...

String#[]=(regexp, nth, val) (27115.0)

正規表現 regexp の nth 番目の括弧にマッチする 最初の部分文字列を文字列 val で置き換えます。

正規表現 regexp の nth 番目の括弧にマッチする
最初の部分文字列を文字列 val で置き換えます。

nth が 0 の場合は、マッチした部分文字列全体を val で置き換えます。

@param regexp 置き換えたい部分文字列のパターンを示す正規表現
@param nth 置き換えたい部分文字列のパターンを示す正規表現レジスタの番号
@param val 指定範囲の部分文字列と置き換えたい文字列

@return val を返します。

@raise IndexError 正規表現がマッチしなかった場合に発生します。

//emlist[例]...

String#[]=(regexp, val) (27115.0)

正規表現 regexp にマッチした部分文字列全体を val で置き換えます。

正規表現 regexp にマッチした部分文字列全体を val で置き換えます。

@param regexp 置き換えたい部分文字列のパターンを示す正規表現
@param val 置き換えたい文字列

@return val を返します。

@raise IndexError 正規表現がマッチしなかった場合に発生します。

//emlist[例][ruby]{
buf = "string"
buf[/tr../] = "!!"
p buf # => "s!!g"
//}

String#capitalize!(*options) -> self | nil (27112.0)

文字列先頭の文字を大文字に、残りを小文字に破壊的に変更します。

文字列先頭の文字を大文字に、残りを小文字に破壊的に変更します。

@param options オプションの詳細は String#downcase を参照してください。

@return capitalize! は self を変更して返しますが、
変更が起こらなかった場合は nil を返します。

//emlist[例][ruby]{
str = "foobar"
str.capitalize!
p str # => "Foobar"

str = "fooBAR"
str.capitalize!
p str # => "Foobar"
//}

@see Stri...

String#delete_suffix!(suffix) -> self | nil (27112.0)

self の末尾から破壊的に suffix を削除します。

self の末尾から破壊的に suffix を削除します。

@param suffix 末尾から削除する文字列を指定します。

@return 削除した場合は self、変化しなかった場合は nil

//emlist[][ruby]{
"hello".delete_suffix!("llo") # => "he"
"hello".delete_suffix!("hel") # => nil
//}

@see String#chomp!
@see String#chop!
@see String#delete_prefix!
@see String#delete_suffix
@see S...

絞り込み条件を変える

String#rindex(pattern, pos = self.size) -> Integer | nil (27112.0)

文字列のインデックス pos から左に向かって pattern を探索します。 最初に見つかった部分文字列の左端のインデックスを返します。 見つからなければ nil を返します。

文字列のインデックス pos から左に向かって pattern を探索します。
最初に見つかった部分文字列の左端のインデックスを返します。
見つからなければ nil を返します。

引数 pattern は探索する部分文字列または正規表現で指定します。

pos が負の場合は、文字列の末尾から数えた位置から探索します。

rindex と String#index とでは、探索方向だけが逆になります。
完全に左右が反転した動作をするわけではありません。
探索はその開始位置を右から左にずらしながら行いますが、
部分文字列の照合はどちらのメソッドも左から右に向かって行います。
以下の例を参照して...

String#swapcase!(*options) -> self | nil (27112.0)

大文字を小文字に、小文字を大文字に破壊的に変更します。

大文字を小文字に、小文字を大文字に破壊的に変更します。

@param options オプションの詳細は String#downcase を参照してください。

swapcase! は self を変更して返しますが、
置換が起こらなかった場合は nil を返します。

このメソッドはマルチバイト文字を認識しません。

//emlist[例][ruby]{
str = "ABCxyz"
str.swapcase!
p str # => "abcXYZ"
//}

@see String#swapcase, String#upcase!, String#downcase!, String...

String#casecmp(other) -> -1 | 0 | 1 | nil (27106.0)

String#<=> と同様に文字列の順序を比較しますが、 アルファベットの大文字小文字の違いを無視します。

String#<=> と同様に文字列の順序を比較しますが、
アルファベットの大文字小文字の違いを無視します。

このメソッドの動作は組み込み変数 $= には影響されません。

String#casecmp? と違って大文字小文字の違いを無視するのは
Unicode 全体ではなく、A-Z/a-z だけです。

@param other self と比較する文字列

//emlist[例][ruby]{
"aBcDeF".casecmp("abcde") #=> 1
"aBcDeF".casecmp("abcdef") #=> 0
"aBcDeF".casecmp("abcd...

String#lines(rs = $/, chomp: false) {|line| ... } -> self (27097.0)

文字列中の各行を文字列の配列で返します。(self.each_line.to_a と同じです)

文字列中の各行を文字列の配列で返します。(self.each_line.to_a と同じです)

//emlist[][ruby]{
"aa\nbb\ncc\n".lines # => ["aa\n", "bb\n", "cc\n"]
//}

行の区切りは rs に指定した文字列で、 そのデフォルト値は変数 $/ の値です。
各 line には区切りの文字列も含みます。

rs に nil を指定すると行区切りなしとみなします。 rs に空文字列 "" を指
定すると「パラグラフモード」になり、 改行コードが 2 つ以上連続するとこ
ろで文字列を分割します (つまり空行で分割します)。

...

String#<=>(other) -> -1 | 0 | 1 | nil (27094.0)

self と other を ASCII コード順で比較して、 self が大きい時には 1、等しい時には 0、小さい時には -1 を返します。 このメソッドは Comparable モジュールのメソッドを実装するために使われます。

self と other を ASCII コード順で比較して、
self が大きい時には 1、等しい時には 0、小さい時には -1 を返します。
このメソッドは Comparable モジュールのメソッドを実装するために使われます。

other が文字列でない場合、
other.to_str と other.<=> が定義されていれば
0 - (other <=> self) の結果を返します。
そうでなければ nil を返します。

@param other 文字列
@return 比較結果の整数か nil

//emlist[例][ruby]{
p "aaa" <...

絞り込み条件を変える

String#to_i(base = 10) -> Integer (27094.0)

文字列を 10 進数表現された整数であると解釈して、整数に変換します。

文字列を 10 進数表現された整数であると解釈して、整数に変換します。

//emlist[例][ruby]{
p " 10".to_i # => 10
p "+10".to_i # => 10
p "-10".to_i # => -10

p "010".to_i # => 10
p "-010".to_i # => -10
//}

整数とみなせない文字があればそこまでを変換対象とします。
変換対象が空文字列であれば 0 を返します。

//emlist[例][ruby]{
p "0x11".to_i # => 0
p "".to_i # =>...

String#upto(max, exclusive = false) {|s| ... } -> self (27088.0)

self から始めて max まで 「次の文字列」を順番にブロックに与えて繰り返します。 「次」の定義については String#succ を参照してください。

self から始めて max まで
「次の文字列」を順番にブロックに与えて繰り返します。
「次」の定義については String#succ を参照してください。

たとえば以下のコードは a, b, c, ... z, aa, ... az, ..., za を
出力します。

//emlist[][ruby]{
("a" .. "za").each do |str|
puts str
end
'a'.upto('za') do |str|
puts str
end
//}

@param max 繰り返しをやめる文字列

@param exclusive max を含むかどうか...

String#[]=(range, val) (27085.0)

rangeで指定したインデックスの範囲に含まれる部分文字列を文字列 val で置き換えます。

rangeで指定したインデックスの範囲に含まれる部分文字列を文字列 val で置き換えます。

@param range 置き換えたい範囲を示す Range オブジェクト

@return val を返します。

String#gsub(pattern) -> Enumerator (27085.0)

文字列中で pattern にマッチした部分を順番にブロックに渡し、 その実行結果で置き換えた文字列を生成して返します。 ブロックなしの場合と違い、ブロックの中からは 組み込み変数 $1, $2, $3, ... を問題なく参照できます。

文字列中で pattern にマッチした部分を順番にブロックに渡し、
その実行結果で置き換えた文字列を生成して返します。
ブロックなしの場合と違い、ブロックの中からは
組み込み変数 $1, $2, $3, ... を問題なく参照できます。

@param pattern 置き換える文字列のパターンを表す文字列か正規表現。
文字列を指定した場合は全く同じ文字列にだけマッチする
@return 新しい文字列

//emlist[例][ruby]{
p 'abcabc'.gsub(/[bc]/) {|s| s.upcase } #=> "aBCaBC"
...

String#delete_prefix!(prefix) -> self | nil (27076.0)

self の先頭から破壊的に prefix を削除します。

self の先頭から破壊的に prefix を削除します。

@param prefix 先頭から削除する文字列を指定します。

@return 削除した場合は self、変化しなかった場合は nil

//emlist[][ruby]{
"hello".delete_prefix!("hel") # => "lo"
"hello".delete_prefix!("llo") # => nil
//}

@see String#delete_prefix
@see String#delete_suffix!
@see String#start_with?

絞り込み条件を変える

String#sub!(pattern) {|matched| .... } -> self | nil (27076.0)

文字列中で pattern にマッチした最初の部分をブロックに渡し、 その評価結果へ破壊的に置き換えます。

文字列中で pattern にマッチした最初の部分をブロックに渡し、
その評価結果へ破壊的に置き換えます。

また、ブロックなしの sub と違い、ブロックの中からは
組み込み変数 $1, $2, $3, ... を問題なく参照できます。

@param pattern 置き換える文字列のパターンを表す文字列か正規表現。
文字列を指定した場合は全く同じ文字列にだけマッチする
@return 置換した場合は self、置換しなかった場合は nil

//emlist[例][ruby]{
str = 'abcabc'
str.sub!(/b/) {|s|...

String#tr!(pattern, replace) -> self | nil (27076.0)

pattern 文字列に含まれる文字を検索し、 それを replace 文字列の対応する文字に破壊的に置き換えます。

pattern 文字列に含まれる文字を検索し、
それを replace 文字列の対応する文字に破壊的に置き換えます。

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

replace に対しても `-' による範囲指定が可能です。

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

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

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

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

pattern の形式は tr(1) と同じです。
つまり「a-c」は a から c を意味し、
"^0-9" のように文字列の先頭が「^」の場合は指定した文字以外が置換の対象になります。

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

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

「...

String#gsub!(pattern) -> Enumerator (27070.0)

文字列中で pattern にマッチする部分全てを順番にブロックに渡し、 その評価結果に置き換えます。

文字列中で pattern にマッチする部分全てを順番にブロックに渡し、
その評価結果に置き換えます。

また、ブロックなしの場合と違い、ブロックの中からは
組み込み変数 $1, $2, $3, ... を問題なく参照できます。

@param pattern 置き換える文字列のパターンを表す文字列か正規表現。
文字列を指定した場合は全く同じ文字列にだけマッチする
@return 置換した場合は self、置換しなかった場合は nil

//emlist[例][ruby]{
str = 'abcabc'
str.gsub!(/b/) {|s| s.u...

String#gsub!(pattern) {|matched| .... } -> self | nil (27070.0)

文字列中で pattern にマッチする部分全てを順番にブロックに渡し、 その評価結果に置き換えます。

文字列中で pattern にマッチする部分全てを順番にブロックに渡し、
その評価結果に置き換えます。

また、ブロックなしの場合と違い、ブロックの中からは
組み込み変数 $1, $2, $3, ... を問題なく参照できます。

@param pattern 置き換える文字列のパターンを表す文字列か正規表現。
文字列を指定した場合は全く同じ文字列にだけマッチする
@return 置換した場合は self、置換しなかった場合は nil

//emlist[例][ruby]{
str = 'abcabc'
str.gsub!(/b/) {|s| s.u...

絞り込み条件を変える

<< 1 2 3 ... > >>