るりまサーチ (Ruby 3.3)

最速Rubyリファレンスマニュアル検索!
706件ヒット [101-200件を表示] (0.170秒)

別のキーワード

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

ライブラリ

クラス

キーワード

検索結果

<< < 1 2 3 4 ... > >>

String#byteindex(pattern, offset = 0) -> Integer | nil (27076.0)

文字列の offset から右に向かって pattern を検索し、 最初に見つかった部分文字列の左端のバイト単位のインデックスを返します。 見つからなければ nil を返します。

文字列の offset から右に向かって pattern を検索し、
最初に見つかった部分文字列の左端のバイト単位のインデックスを返します。
見つからなければ nil を返します。

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

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

@param pattern 探索する部分文字列または正規表現
@param offset 探索を開始するバイト単位のオフセット

@raise IndexError オフセットが文字列の境界以外をさしているときに発生します。

//emlist[例][...

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#index(pattern, pos = 0) -> Integer | nil (27076.0)

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

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

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

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

@param pattern 探索する部分文字列または正規表現
@param pos 探索を開始するインデックス

//emlist[例][ruby]{
p "astrochemistry".index("str") # => 1
p "reg...

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...

String#gsub!(pattern, hash) -> self | nil (27070.0)

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

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

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

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

str = "abcabc"
str.gsub!(/[bc]/, hash)
p str #=> "aBCaBC"
//...

String#=~(other) -> Integer | nil (27058.0)

正規表現 other とのマッチを行います。 マッチが成功すればマッチした位置のインデックスを、そうでなければ nil を返します。

正規表現 other とのマッチを行います。
マッチが成功すればマッチした位置のインデックスを、そうでなければ nil を返します。

other が正規表現でも文字列でもない場合は
other =~ self を行います。

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

@param other 正規表現もしくは =~ メソッドを持つオブジェクト
@raise TypeError other が文字列の場合に発生します。

//emlist[例][ruby]{
p "string" =~ /str/ # =...

絞り込み条件を変える

String#each_line(rs = $/, chomp: false) -> Enumerator (27058.0)

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

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

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

@param rs 行末を示す文字列
@param chomp true を指定すると各行の末尾から rs を取り除きます。

//emlist[例][ruby]{
"aa\nbb\ncc\n".each_...

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

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

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

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

@param rs 行末を示す文字列
@param chomp true を指定すると各行の末尾から rs を取り除きます。

//emlist[例][ruby]{
"aa\nbb\ncc\n".each_...

String#encode!(encoding, from_encoding, options = nil) -> self (27058.0)

self を指定したエンコーディングに変換し、自身を置き換えます。引数を2つ 与えた場合、第二引数は変換元のエンコーディングを意味します。そうでない場合は self のエンコーディングが使われます。変換後の self を返します。

self を指定したエンコーディングに変換し、自身を置き換えます。引数を2つ
与えた場合、第二引数は変換元のエンコーディングを意味します。そうでない場合は
self のエンコーディングが使われます。変換後の self を返します。

(gsub!などと異なり)変換が行なわれなくても self を返します。

@param encoding 変換先のエンコーディングを表す文字列か Encoding オブジェクトを指定します。
@param from_encoding 変換元のエンコーディングを表す文字列か Encoding オブジェクトを指定します。
@return ...

String#encode!(encoding, options = nil) -> self (27058.0)

self を指定したエンコーディングに変換し、自身を置き換えます。引数を2つ 与えた場合、第二引数は変換元のエンコーディングを意味します。そうでない場合は self のエンコーディングが使われます。変換後の self を返します。

self を指定したエンコーディングに変換し、自身を置き換えます。引数を2つ
与えた場合、第二引数は変換元のエンコーディングを意味します。そうでない場合は
self のエンコーディングが使われます。変換後の self を返します。

(gsub!などと異なり)変換が行なわれなくても self を返します。

@param encoding 変換先のエンコーディングを表す文字列か Encoding オブジェクトを指定します。
@param from_encoding 変換元のエンコーディングを表す文字列か Encoding オブジェクトを指定します。
@return ...

String#insert(pos, other) -> self (27058.0)

pos 番目の文字の直前に文字列 other を挿入します。 self[pos, 0] = other と同じ操作です。

pos 番目の文字の直前に文字列 other を挿入します。
self[pos, 0] = other と同じ操作です。

@param pos 文字列を挿入するインデックス
@param other 挿入する文字列

//emlist[例][ruby]{
str = "foobaz"
str.insert(3, "bar")
p str # => "foobarbaz"
//}

@see String#[]=

絞り込み条件を変える

String#unicode_normalize!(form = :nfc) -> self (27058.0)

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

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

(gsub!などと異なり)変換が行なわれなくても self を返します。

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

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

//e...

String#unicode_normalized?(form = :nfc) -> bool (27058.0)

self が引数 form で指定された正規化形式で Unicode 正規化された文字列か どうかを返します。

self が引数 form で指定された正規化形式で Unicode 正規化された文字列か
どうかを返します。

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

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

//emlist[例][ruby]{
"a\u0300".unicode_normalized? ...

String#<<(other) -> self (27043.0)

self に文字列 other を破壊的に連結します。 other が 整数である場合は other.chr(self.encoding) 相当の文字を末尾に追加します。

self に文字列 other を破壊的に連結します。
other が 整数である場合は other.chr(self.encoding) 相当の文字を末尾に追加します。

self を返します。

@param other 文字列もしくは 0 以上の整数

//emlist[例][ruby]{
str = "string"
str.concat "XXX"
p str # => "stringXXX"

str << "YYY"
p str # => "stringXXXYYY"

str << 65 # 文字AのASCIIコード
p str # => "stri...

String#concat(other) -> self (27043.0)

self に文字列 other を破壊的に連結します。 other が 整数である場合は other.chr(self.encoding) 相当の文字を末尾に追加します。

self に文字列 other を破壊的に連結します。
other が 整数である場合は other.chr(self.encoding) 相当の文字を末尾に追加します。

self を返します。

@param other 文字列もしくは 0 以上の整数

//emlist[例][ruby]{
str = "string"
str.concat "XXX"
p str # => "stringXXX"

str << "YYY"
p str # => "stringXXXYYY"

str << 65 # 文字AのASCIIコード
p str # => "stri...

String#casecmp?(other) -> bool | nil (27040.0)

大文字小文字の違いを無視し文字列を比較します。 文字列が一致する場合には true を返し、一致しない場合には false を返します。

大文字小文字の違いを無視し文字列を比較します。
文字列が一致する場合には true を返し、一致しない場合には false を返します。

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

//emlist[例][ruby]{
"abcdef".casecmp?("abcde") #=> false
"aBcDeF".casecmp?("abcdef") #=> true
"abcdef".casecmp?("abcdefg") #=> false
"abcdef".casecmp?("ABCDEF") #=> true
"\u{e4 f6 fc}".ca...

絞り込み条件を変える

String#delete!(*strs) -> self | nil (27040.0)

self から strs に含まれる文字を破壊的に取り除きます。

self から strs に含まれる文字を破壊的に取り除きます。

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

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

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

@return 通常は self を返しますが、何も変更が起こ...

String#setbyte(index, b) -> Integer (27040.0)

index バイト目のバイトを b に変更します。

index バイト目のバイトを b に変更します。

index に負を指定すると末尾から数えた位置を変更します。

セットした値を返します。

@param index バイトをセットする位置
@param b セットするバイト(0 から 255 までの整数)
@raise IndexError 範囲外に値をセットしようとした場合に発生します。

//emlist[例][ruby]{
s = "Sunday"
s.setbyte(0, 77)
s.setbyte(-5, 111)
s # => "Monday"
//}

String#scan(pattern) {|s| ... } -> self (27031.0)

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

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

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

//emlist[例][ruby]{
"foobarbazfoobarbaz".scan(/ba./) {|s| p s }
# "bar"
# "baz"
# "bar"
# "baz"

"foobarbazfoobarbaz".scan("ba") {|s| p s }
# "ba"
# "ba"
# "ba"
# "ba"

"foobarb...

String#concat(*arguments) -> self (27028.0)

self に複数の文字列を破壊的に連結します。

self に複数の文字列を破壊的に連結します。

引数の値が整数である場合は Integer#chr の結果に相当する文字を末尾に追加します。追加する文字のエンコーディングは self.encoding です。

self を返します。

@param arguments 複数の文字列もしくは 0 以上の整数

//emlist[例][ruby]{
str = "foo"
str.concat
p str # => "foo"

str = "foo"
str.concat "bar", "baz"
p str # => "foobarbaz"

str = "foo"
str....

String#count(*chars) -> Integer (27022.0)

chars で指定された文字が文字列 self にいくつあるか数えます。

chars で指定された文字が文字列 self にいくつあるか数えます。

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

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

引数を複数指定した場合は、
すべての引数にマッチした文字だけを数えます。

@para...

絞り込み条件を変える

String#force_encoding(encoding) -> self (27022.0)

文字列の持つエンコーディング情報を指定された encoding に変えます。

文字列の持つエンコーディング情報を指定された encoding に変えます。

このとき実際のエンコーディングは変換されず、検査もされません。
Array#pack などで得られたバイト列のエンコーディングを指定する時に使います。

@param encoding 変更するエンコーディング情報を表す文字列か Encoding オブジェクトを指定します。

//emlist[例][ruby]{
s = [164, 164, 164, 237, 164, 207].pack("C*")
p s.encoding #=> ASC...

String#getbyte(index) -> Integer | nil (27022.0)

index バイト目のバイトを整数で返します。

index バイト目のバイトを整数で返します。

index に負を指定すると末尾から数えた位置のバイト
を取り出します。
範囲外を指定した場合は nil を返します。

@param index バイトを取り出す位置

//emlist[例][ruby]{
s = "tester"
s.bytes # => [116, 101, 115, 116, 101, 114]
s.getbyte(0) # => 116
s.getbyte(1) # => 101
s.getbyte(-1) # => 114
s.getbyte(6) ...

String#include?(substr) -> bool (27022.0)

文字列中に部分文字列 substr が含まれていれば真を返します。

文字列中に部分文字列 substr が含まれていれば真を返します。

@param substr 検索する文字列

//emlist[例][ruby]{
"hello".include? "lo" #=> true
"hello".include? "ol" #=> false
"hello".include? ?h #=> true
//}

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

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

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

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

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

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

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

String#sum(bits = 16) -> Integer (27022.0)

文字列の bits ビットのチェックサムを計算します。

文字列の bits ビットのチェックサムを計算します。

以下と同じです。

//emlist[][ruby]{
def sum(bits)
sum = 0
each_byte {|c| sum += c }
return 0 if sum == 0
sum & ((1 << bits) - 1)
end
//}

例えば以下のコードで UNIX System V の
sum(1) コマンドと同じ値が得られます。

//emlist[例][ruby]{
sum = 0
ARGF.each_line do |line|
sum += line.sum
end
sum %= ...

絞り込み条件を変える

Gem::Indexer#sanitize_string(string) -> String (18949.0)

与えられた文字列をサニタイズします。

与えられた文字列をサニタイズします。

@param string サニタイズ対象の文字列を指定します。

@see Gem::Indexer#sanitize

OpenSSL::PKey::DH#params -> {String => OpenSSL::BN} (18607.0)

鍵パラメータと鍵対を {"パラメータ名" => パラメータ値} というハッシュ テーブルで返します。

鍵パラメータと鍵対を {"パラメータ名" => パラメータ値} というハッシュ
テーブルで返します。

ハッシュテーブルのキーは "p", "g", "pub_key", "priv_key" の4つです。
自身が内部に鍵対を持っていない場合は、 "pub_key" と "priv_key" に
対応する値は 0 となります。

OpenSSL::PKey::DSA#params -> {String => OpenSSL::BN} (18607.0)

鍵のパラメータを {パラメータ名 => その整数値} というハッシュで返します。

鍵のパラメータを {パラメータ名 => その整数値} というハッシュで返します。

公開鍵における priv_key のように自身が持っていないパラメータは
0 がセットされます。

OpenSSL::PKey::RSA#params -> {String => OpenSSL::BN} (18607.0)

鍵のパラメータ(OpenSSL::PKey::RSA#e,OpenSSL::PKey::RSA#n, OpenSSL::PKey::RSA#dなど)を{パラメータ名文字列 => パラメータ値} というハッシュで返します。

鍵のパラメータ(OpenSSL::PKey::RSA#e,OpenSSL::PKey::RSA#n,
OpenSSL::PKey::RSA#dなど)を{パラメータ名文字列 => パラメータ値}
というハッシュで返します。

鍵が公開鍵の場合、OpenSSL::PKey::RSA#d
のように公開鍵が持っていない値は 0 になります。

OpenSSL::PKCS7#error_string=(str) (18343.0)

検証エラーの理由を表す文字列を設定します。

検証エラーの理由を表す文字列を設定します。

@param str 設定するエラー文字列
@see OpenSSL::PKCS7#error_string

絞り込み条件を変える

OpenSSL::X509::ExtensionFactory#create_ext_from_string(str) -> OpenSSL::X509::Extension (18325.0)

文字列から OpenSSL::X509::Extension オブジェクトを生成します。

文字列から OpenSSL::X509::Extension オブジェクトを生成します。

文字列は "oid = value" もしくは "oid = critical, value" という
形式である必要があります。

@param str 生成する拡張領域のデータの文字列
@see OpenSSL::X509::ExtensionFactory#create_ext

REXML::Comment#string=(value) (18325.0)

コメント文字列を設定します。

コメント文字列を設定します。

@param value 設定する文字列

WEBrick::HTTPRequest#query_string=(value) (18325.0)

リクエスト URI のクエリーを文字列で表すアクセサです。 デフォルトは request_uri.query です。

リクエスト URI のクエリーを文字列で表すアクセサです。
デフォルトは request_uri.query です。

@param value クエリーを表す文字列を指定します。

CGI::QueryExtension#params -> Hash (18322.0)

パラメータを格納したハッシュを返します。

パラメータを格納したハッシュを返します。

フォームから入力された値や、URLに埋め込まれた QUERY_STRING のパース結果の取得などに使用します。

cgi = CGI.new
cgi.params['developer'] # => ["Matz"] (Array)
cgi.params['developer'][0] # => "Matz"
cgi.params[''] # => nil

StringScanner#peek(bytes) -> String (9436.0)

スキャンポインタから長さ bytes バイト分だけ文字列を返します。

スキャンポインタから長さ bytes バイト分だけ文字列を返します。

//emlist[例][ruby]{
require 'strscan'
s = StringScanner.new('test string')
s.peek(4) # => "test"
//}

また、このメソッドを実行してもスキャンポインタは移動しません。

StringScanner#peep は将来のバージョンでは削除される予定です。
代わりに StringScanner#peek を使ってください。

@param bytes 0 以上の整数を指定します。
ただし、スキャン対象の...

絞り込み条件を変える

StringScanner#peep(bytes) -> String (9436.0)

スキャンポインタから長さ bytes バイト分だけ文字列を返します。

スキャンポインタから長さ bytes バイト分だけ文字列を返します。

//emlist[例][ruby]{
require 'strscan'
s = StringScanner.new('test string')
s.peek(4) # => "test"
//}

また、このメソッドを実行してもスキャンポインタは移動しません。

StringScanner#peep は将来のバージョンでは削除される予定です。
代わりに StringScanner#peek を使ってください。

@param bytes 0 以上の整数を指定します。
ただし、スキャン対象の...

StringScanner#[](nth) -> String | nil (9379.0)

前回マッチした正規表現の nth 番目のかっこに対応する部分文字列を 返します。インデックス 0 はマッチした部分全体です。前回のマッチが 失敗していると常に nil を返します。

前回マッチした正規表現の nth 番目のかっこに対応する部分文字列を
返します。インデックス 0 はマッチした部分全体です。前回のマッチが
失敗していると常に nil を返します。

@param nth 前回マッチした正規表現の nth 番目のかっこに対応する部分文字列を
返します。


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

s = StringScanner.new('test string')
s.scan(/\w(\w)(\w*)/) # => "test"
s[0] # => "test"...

StringIO#read_nonblock(maxlen, outbuf = nil, exception: true) -> String | nil (9361.0)

StringIO#readに似ていますが、 exception オプションに false を指定すると EOFError を発生させず nil を返します。

StringIO#readに似ていますが、 exception オプションに false を指定すると EOFError を発生させず nil を返します。

@param len 読み込みたい長さを整数で指定します。StringIO#read と同じです。

@param outbuf 読み込んだ文字列を出力するバッファを文字列で指定します。指定した文字列オブジェクトが
あらかじめ length 長の領域であれば、余計なメモリの割当てが行われません。指定した文字列の
長さが length と異なる場合、その文字列は一旦 length ...

StringScanner#scan(regexp) -> String | nil (9361.0)

スキャンポインタの地点だけで regexp と文字列のマッチを試します。 マッチしたら、スキャンポインタを進めて正規表現にマッチした 部分文字列を返します。マッチしなかったら nil を返します。

スキャンポインタの地点だけで regexp と文字列のマッチを試します。
マッチしたら、スキャンポインタを進めて正規表現にマッチした
部分文字列を返します。マッチしなかったら nil を返します。

@param regexp マッチに用いる正規表現を指定します。

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

s = StringScanner.new('test string')
p s.scan(/\w+/) #=> "test"
p s.scan(/\w+/) #=> nil
p s.scan(/\s+/) #=> " "
p s.scan(/...

StringIO#readpartial -> String (9358.0)

自身から len バイト読み込んで返します。 StringIO#read と同じです。ただし、文字列の終端に達した場合、EOFError を投げます。

自身から len バイト読み込んで返します。
StringIO#read と同じです。ただし、文字列の終端に達した場合、EOFError を投げます。

@param len 読み込みたい長さを整数で指定します。StringIO#read と同じです。

@param outbuf 読み込んだ文字列を出力するバッファを文字列で指定します。指定した文字列オブジェクトが
あらかじめ length 長の領域であれば、余計なメモリの割当てが行われません。指定した文字列の
長さが length と異なる場合、その文字列は一旦 length 長に拡...

絞り込み条件を変える

StringIO#readpartial(len) -> String (9358.0)

自身から len バイト読み込んで返します。 StringIO#read と同じです。ただし、文字列の終端に達した場合、EOFError を投げます。

自身から len バイト読み込んで返します。
StringIO#read と同じです。ただし、文字列の終端に達した場合、EOFError を投げます。

@param len 読み込みたい長さを整数で指定します。StringIO#read と同じです。

@param outbuf 読み込んだ文字列を出力するバッファを文字列で指定します。指定した文字列オブジェクトが
あらかじめ length 長の領域であれば、余計なメモリの割当てが行われません。指定した文字列の
長さが length と異なる場合、その文字列は一旦 length 長に拡...

StringIO#readpartial(len, outbuf) -> String (9358.0)

自身から len バイト読み込んで返します。 StringIO#read と同じです。ただし、文字列の終端に達した場合、EOFError を投げます。

自身から len バイト読み込んで返します。
StringIO#read と同じです。ただし、文字列の終端に達した場合、EOFError を投げます。

@param len 読み込みたい長さを整数で指定します。StringIO#read と同じです。

@param outbuf 読み込んだ文字列を出力するバッファを文字列で指定します。指定した文字列オブジェクトが
あらかじめ length 長の領域であれば、余計なメモリの割当てが行われません。指定した文字列の
長さが length と異なる場合、その文字列は一旦 length 長に拡...

StringIO#sysread -> String (9358.0)

自身から len バイト読み込んで返します。 StringIO#read と同じです。ただし、文字列の終端に達した場合、EOFError を投げます。

自身から len バイト読み込んで返します。
StringIO#read と同じです。ただし、文字列の終端に達した場合、EOFError を投げます。

@param len 読み込みたい長さを整数で指定します。StringIO#read と同じです。

@param outbuf 読み込んだ文字列を出力するバッファを文字列で指定します。指定した文字列オブジェクトが
あらかじめ length 長の領域であれば、余計なメモリの割当てが行われません。指定した文字列の
長さが length と異なる場合、その文字列は一旦 length 長に拡...

StringIO#sysread(len) -> String (9358.0)

自身から len バイト読み込んで返します。 StringIO#read と同じです。ただし、文字列の終端に達した場合、EOFError を投げます。

自身から len バイト読み込んで返します。
StringIO#read と同じです。ただし、文字列の終端に達した場合、EOFError を投げます。

@param len 読み込みたい長さを整数で指定します。StringIO#read と同じです。

@param outbuf 読み込んだ文字列を出力するバッファを文字列で指定します。指定した文字列オブジェクトが
あらかじめ length 長の領域であれば、余計なメモリの割当てが行われません。指定した文字列の
長さが length と異なる場合、その文字列は一旦 length 長に拡...

StringIO#sysread(len, outbuf) -> String (9358.0)

自身から len バイト読み込んで返します。 StringIO#read と同じです。ただし、文字列の終端に達した場合、EOFError を投げます。

自身から len バイト読み込んで返します。
StringIO#read と同じです。ただし、文字列の終端に達した場合、EOFError を投げます。

@param len 読み込みたい長さを整数で指定します。StringIO#read と同じです。

@param outbuf 読み込んだ文字列を出力するバッファを文字列で指定します。指定した文字列オブジェクトが
あらかじめ length 長の領域であれば、余計なメモリの割当てが行われません。指定した文字列の
長さが length と異なる場合、その文字列は一旦 length 長に拡...

絞り込み条件を変える

StringIO#read -> String (9349.0)

自身から len バイト読み込んで返します。len が省略された場合は、最後まで読み込んで返します。 詳しい仕様は IO#read を参照して下さい。

自身から len バイト読み込んで返します。len が省略された場合は、最後まで読み込んで返します。
詳しい仕様は IO#read を参照して下さい。

@param len 読み込みたい長さを整数で指定します。詳しい仕様は IO#read を参照して下さい。

@param outbuf 読み込んだ文字列を出力するバッファを文字列で指定します。指定した文字列オブジェクトが
あらかじめ length 長の領域であれば、余計なメモリの割当てが行われません。指定した文字列の
長さが length と異なる場合、その文字列は一旦 length...

StringIO#read(len) -> String | nil (9349.0)

自身から len バイト読み込んで返します。len が省略された場合は、最後まで読み込んで返します。 詳しい仕様は IO#read を参照して下さい。

自身から len バイト読み込んで返します。len が省略された場合は、最後まで読み込んで返します。
詳しい仕様は IO#read を参照して下さい。

@param len 読み込みたい長さを整数で指定します。詳しい仕様は IO#read を参照して下さい。

@param outbuf 読み込んだ文字列を出力するバッファを文字列で指定します。指定した文字列オブジェクトが
あらかじめ length 長の領域であれば、余計なメモリの割当てが行われません。指定した文字列の
長さが length と異なる場合、その文字列は一旦 length...

StringIO#read(len, outbuf) -> String (9349.0)

自身から len バイト読み込んで返します。len が省略された場合は、最後まで読み込んで返します。 詳しい仕様は IO#read を参照して下さい。

自身から len バイト読み込んで返します。len が省略された場合は、最後まで読み込んで返します。
詳しい仕様は IO#read を参照して下さい。

@param len 読み込みたい長さを整数で指定します。詳しい仕様は IO#read を参照して下さい。

@param outbuf 読み込んだ文字列を出力するバッファを文字列で指定します。指定した文字列オブジェクトが
あらかじめ length 長の領域であれば、余計なメモリの割当てが行われません。指定した文字列の
長さが length と異なる場合、その文字列は一旦 length...

WIN32OLE_PARAM#name -> String (9346.0)

パラメータ名を取得します。

パラメータ名を取得します。

@return パラメータ名を返します。名前付き引数形式でメソッドを呼び出すときに指定します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 9.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SaveAs')
param1 = method.params[0]
puts param1.name # => Filename

WIN32OLE_PARAM#to_s -> String (9346.0)

パラメータ名を取得します。

パラメータ名を取得します。

@return パラメータ名を返します。名前付き引数形式でメソッドを呼び出すときに指定します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 9.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SaveAs')
param1 = method.params[0]
puts param1.name # => Filename

絞り込み条件を変える

StringIO#reopen(str, mode = &#39;r+&#39;) -> StringIO (9343.0)

自身が表す文字列が指定された文字列 str になります。

自身が表す文字列が指定された文字列 str になります。

与えられた str がフリーズされている場合には、mode はデフォルトでは読み取りのみに設定されます。
ブロックを与えた場合は生成した StringIO オブジェクトを引数としてブロックを評価します。

@param str 自身が表したい文字列を指定します。
この文字列はバッファとして使われます。StringIO#write などによって、
str 自身も書き換えられます。

@param mode Kernel.#open 同様文字列か整数で自身のモードを指定します。

@raise...

StringScanner#check(regexp) -> String | nil (9343.0)

現在位置から regexp とのマッチを試みます。 マッチに成功したらマッチした部分文字列を返します。 マッチに失敗したら nil を返します。

現在位置から regexp とのマッチを試みます。
マッチに成功したらマッチした部分文字列を返します。
マッチに失敗したら nil を返します。

このメソッドはマッチが成功してもスキャンポインタを進めません。

@param regexp マッチに用いる正規表現を指定します。

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

s = StringScanner.new('test string')
s.check(/\w+/) # => "test"
s.pos # => 0
s.matched # => "test"
s.check(...

StringScanner#check_until(regexp) -> String | nil (9343.0)

regexp が一致するまで文字列をスキャンします。 マッチに成功したらスキャン開始位置からマッチ部分の末尾までの部分文字列を返します。 マッチに失敗したら nil を返します。

regexp が一致するまで文字列をスキャンします。
マッチに成功したらスキャン開始位置からマッチ部分の末尾までの部分文字列を返します。
マッチに失敗したら nil を返します。

このメソッドはマッチが成功してもスキャンポインタを進めません。

@param regexp マッチに用いる正規表現を指定します。

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

s = StringScanner.new('test string')
s.check_until(/str/) # => "test str"
s.matched # => "str...

StringScanner#scan_until(regexp) -> String | nil (9343.0)

regexp で指定された正規表現とマッチするまで文字列をスキャンします。 マッチに成功したらスキャンポインタを進めて、 スキャン開始位置からマッチ部分の末尾までの部分文字列を返します。 マッチに失敗したら nil を返します。

regexp で指定された正規表現とマッチするまで文字列をスキャンします。
マッチに成功したらスキャンポインタを進めて、
スキャン開始位置からマッチ部分の末尾までの部分文字列を返します。
マッチに失敗したら nil を返します。

@param regexp マッチに用いる正規表現を指定します。

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

s = StringScanner.new('test string')
s.scan_until(/str/) # => "test str"
s.matched # => "str"
s.pos ...

WIN32OLE_PARAM#ole_type -> String (9343.0)

パラメータの型名を取得します。

パラメータの型名を取得します。

@return パラメータの型名を示す文字列を返します。
パラメータの型情報が見つからない場合は、"unknown type"を返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 9.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SaveAs')
param1 = method.params[0]
puts param1.ole_type # => VARIANT

OLEオートメーション...

絞り込み条件を変える

WIN32OLE_PARAM#ole_type_detail -> [String] (9343.0)

パラメータの属性を取得します。

パラメータの属性を取得します。

@return 型の属性を文字列配列で返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 9.0 Object Library', 'IWorksheetFunction')
method = WIN32OLE_METHOD.new(tobj, 'SumIf')
param1 = method.params[0]
p param1.ole_type_detail # => ["PTR", "USERDEFINED", "Range"]

パラメータの取り得る属性値はCOMのIDL(インターフ...

StringIO#reopen(sio) -> StringIO (9328.0)

自身が表す文字列が指定された StringIO と同じものになります。

自身が表す文字列が指定された StringIO と同じものになります。

@param sio 自身が表したい StringIO を指定します。

//emlist[例][ruby]{
require 'stringio'
sio = StringIO.new("hoge", 'r+')
sio2 = StringIO.new("foo", 'r+')
sio.reopen(sio2)
p sio.read #=> "foo"
//}

JSON::Generator::GeneratorMethods::String#to_json(state_or_hash = nil) -> String (9325.0)

自身から生成した JSON 形式の文字列を返します。

自身から生成した JSON 形式の文字列を返します。

自身のエンコードは UTF-8 であるべきです。
"\u????" のように UTF-16 ビッグエンディアンでエンコードされた文字列を返すことがあります。

@param state_or_hash 生成する JSON 形式の文字列をカスタマイズするため
に JSON::State のインスタンスか、
JSON::State.new の引数と同じ Hash を
指定します。

//emlist[例][ruby]...

StringIO#gets(rs = $/) -> String | nil (9325.0)

自身から 1 行読み込んで、その文字列を返します。文字列の終端に到達した時には nil を返します。 $_ に読み込んだ行がセットされます。

自身から 1 行読み込んで、その文字列を返します。文字列の終端に到達した時には nil を返します。
$_ に読み込んだ行がセットされます。

@param rs 行の区切りを文字列で指定します。rs に nil を指定すると行区切りなしとみなします。空文字列 "" を指定すると連続する改行を行の区切りとみなします(パラグラフモード)。

@raise IOError 自身が読み込み用にオープンされていなければ発生します。

//emlist[例][ruby]{
require "stringio"
a = StringIO.new("hoge")
a.gets ...

StringIO#readline(rs = $/) -> String (9325.0)

自身から 1 行読み込んで、その文字列を返します。

自身から 1 行読み込んで、その文字列を返します。

文字列の終端に到達した時には、例外 EOFError を発生させます。
IO#readline と違い読み込んだ文字列を変数 $_ にセットしません。

@param rs 行の区切りを文字列で指定します。rs に nil を指定すると行区切りなしとみなします。空文字列 "" を指定すると連続する改行を行の区切りとみなします(パラグラフモード)。

@raise EOFError 文字列の終端に到達した時に発生します。

@raise IOError 自身が読み込み用にオープンされていなければ発生します。

//emlist[例][rub...

絞り込み条件を変える

StringIO#readlines(rs = $/) -> [String] (9325.0)

自身からデータを全て読み込んで、その各行を要素としてもつ配列を返します。 既に文字列の終端に達していれば空配列 [] を返します。

自身からデータを全て読み込んで、その各行を要素としてもつ配列を返します。
既に文字列の終端に達していれば空配列 [] を返します。

@param rs 行の区切りを文字列で指定します。rs に nil を指定すると行区切りなしとみなします。空文字列 "" を指定すると連続する改行を行の区切りとみなします(パラグラフモード)。

@raise IOError 自身が読み込み用にオープンされていなければ発生します。

//emlist[例][ruby]{
require "stringio"
a = StringIO.new("hoge\nfoo\nbar\n")
a.readlines ...

StringScanner#search_full(regexp, s, f) -> object (9112.0)

regexp で指定された正規表現とマッチするまで文字列をスキャンします。

regexp で指定された正規表現とマッチするまで文字列をスキャンします。

マッチに成功すると、s と f の値によって以下のように動作します。

* s が true ならばスキャンポインタを進めます。
* s が false ならばスキャンポインタを進めません。
* f が true ならばスキャン開始位置からマッチした部分の末尾までの部分文字列を返します。
* f が false ならばスキャン開始位置からマッチした部分の末尾までの部分文字列の長さを返します。

マッチに失敗すると s や f に関係なく nil を返します。

このメソッドは s と ...

StringIO#ungetc(str_or_int) -> nil (9094.0)

文字列か整数で指定された str_or_int を自身に書き戻します。 nil を返します。

文字列か整数で指定された str_or_int を自身に書き戻します。
nil を返します。

何回でも書き戻すことが可能です。
現在位置が自身のサイズよりも大きい場合は、自身をリサイズしてから、ch を書き戻します。

@param str_or_int 書き戻したい文字を文字列か整数で指定します。複数の文
字を書き戻す事もできます。

@raise IOError 自身が読み込み可能でない時に発生します。

//emlist[例][ruby]{
require "stringio"
s = StringIO.new("hoge")
s.pos = 1
s...

StringScanner#<<(str) -> self (9094.0)

操作対象の文字列に対し str を破壊的に連結します。 マッチ記録は変更されません。

操作対象の文字列に対し str を破壊的に連結します。
マッチ記録は変更されません。

selfを返します。

@param str 操作対象の文字列に対し str を破壊的に連結します。

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

s = StringScanner.new('test') # => #<StringScanner 0/4 @ "test">
s.scan(/\w(\w*)/) # => "test"
s[0] # => "test"
s[1] ...

StringScanner#concat(str) -> self (9094.0)

操作対象の文字列に対し str を破壊的に連結します。 マッチ記録は変更されません。

操作対象の文字列に対し str を破壊的に連結します。
マッチ記録は変更されません。

selfを返します。

@param str 操作対象の文字列に対し str を破壊的に連結します。

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

s = StringScanner.new('test') # => #<StringScanner 0/4 @ "test">
s.scan(/\w(\w*)/) # => "test"
s[0] # => "test"
s[1] ...

絞り込み条件を変える

StringScanner#scan_full(regexp, s, f) -> object (9094.0)

スキャンポインタの位置から regexp と文字列のマッチを試します。

スキャンポインタの位置から regexp と文字列のマッチを試します。

マッチに成功すると、s と f の値によって以下のように動作します。

* s が true ならばスキャンポインタを進めます。
* s が false ならばスキャンポインタを進めません。
* f が true ならばマッチした部分文字列を返します。
* f が false ならばマッチした部分文字列の長さを返します。

マッチに失敗すると s や f に関係なく nil を返します。

このメソッドは s と f の組み合わせにより、
他のメソッドと同等の動作になります。

*...

StringIO#printf(format, *obj) -> nil (9058.0)

指定されたフォーマットに従い各引数 obj を文字列に変換して、自身に出力します。

指定されたフォーマットに従い各引数 obj を文字列に変換して、自身に出力します。

@param format 文字列のフォーマットを指定します。Kernel.#format を参照して下さい。

@param obj 書き込みたいオブジェクトを指定します。

@raise IOError 自身が書き込み用にオープンされていなければ発生します。

//emlist[例][ruby]{
require "stringio"
a = StringIO.new("", 'r+')
a.printf("%c%c%c", 97, 98, 99)
a.string ...

StringIO#set_encoding(ext_enc) -> self (9058.0)

自身のエンコーディングを指定されたエンコーディングに設定します。

自身のエンコーディングを指定されたエンコーディングに設定します。

@param ext_enc エンコーディングを指定します。
nil を指定した場合は Encoding.default_external が
使われます。

@param int_enc 無視されます。IO クラスの API との互換性のために用
意されています。

@param opt 無視されます。IO クラスの API との互換性のために用意さ
れています。

StringIO#set_encoding(ext_enc, int_enc) -> self (9058.0)

自身のエンコーディングを指定されたエンコーディングに設定します。

自身のエンコーディングを指定されたエンコーディングに設定します。

@param ext_enc エンコーディングを指定します。
nil を指定した場合は Encoding.default_external が
使われます。

@param int_enc 無視されます。IO クラスの API との互換性のために用
意されています。

@param opt 無視されます。IO クラスの API との互換性のために用意さ
れています。

StringIO#set_encoding(ext_enc, int_enc, opt) -> self (9058.0)

自身のエンコーディングを指定されたエンコーディングに設定します。

自身のエンコーディングを指定されたエンコーディングに設定します。

@param ext_enc エンコーディングを指定します。
nil を指定した場合は Encoding.default_external が
使われます。

@param int_enc 無視されます。IO クラスの API との互換性のために用
意されています。

@param opt 無視されます。IO クラスの API との互換性のために用意さ
れています。

絞り込み条件を変える

StringIO#truncate(len) -> Integer (9058.0)

自身のサイズが len になるように、自身を切り詰め、もしくは拡大します。 拡大した場合は、その部分を 0 で埋めます。 len を返します。

自身のサイズが len になるように、自身を切り詰め、もしくは拡大します。
拡大した場合は、その部分を 0 で埋めます。
len を返します。

@param len 変更したいサイズを整数で指定します。

@raise IOError 自身が書き込み可能でない時に発生します。

@raise Errno::EINVAL len がマイナスの時に発生します。

//emlist[例][ruby]{
require "stringio"
a = StringIO.new("hoge", 'r+')
a.truncate(2)
a.string #=>...

StringIO#pos=(n) (9040.0)

自身の位置を n に移動します。自身が表す文字列のサイズより大きくても構いません。

自身の位置を n に移動します。自身が表す文字列のサイズより大きくても構いません。

@param n 自身の位置を整数で指定します。

@raise Errno::EINVAL n がマイナスである場合に発生します。

//emlist[例][ruby]{
require "stringio"
a = StringIO.new("hoge", 'r+')
a.pos = 10
a << 'Z'
a.string #=> "hoge\000\000\000\000\000\000Z"
//}

StringIO#print() -> nil (9040.0)

自身に引数を順に出力します。引数を省略した場合は、$_ を出力します。 引数の扱いは Kernel.#print を参照して下さい。

自身に引数を順に出力します。引数を省略した場合は、$_ を出力します。
引数の扱いは Kernel.#print を参照して下さい。

@param obj 書き込みたいオブジェクトを指定します。

@raise IOError 自身が書き込み用にオープンされていなければ発生します。

//emlist[例][ruby]{
require "stringio"
a = StringIO.new("", 'r+')
a.print("hoge", "bar", "foo")
a.string #=> "hogebarfoo"
//}

StringIO#print(*obj) -> nil (9040.0)

自身に引数を順に出力します。引数を省略した場合は、$_ を出力します。 引数の扱いは Kernel.#print を参照して下さい。

自身に引数を順に出力します。引数を省略した場合は、$_ を出力します。
引数の扱いは Kernel.#print を参照して下さい。

@param obj 書き込みたいオブジェクトを指定します。

@raise IOError 自身が書き込み用にオープンされていなければ発生します。

//emlist[例][ruby]{
require "stringio"
a = StringIO.new("", 'r+')
a.print("hoge", "bar", "foo")
a.string #=> "hogebarfoo"
//}

StringIO#puts(*obj) -> nil (9040.0)

obj と改行を順番に自身に出力します。引数がなければ改行のみを出力します。 詳しい仕様は Kernel.#puts を参照して下さい。

obj と改行を順番に自身に出力します。引数がなければ改行のみを出力します。
詳しい仕様は Kernel.#puts を参照して下さい。

@param obj 書き込みたいオブジェクトを指定します。

@raise IOError 自身が書き込み用にオープンされていなければ発生します。

//emlist[例][ruby]{
require "stringio"
a = StringIO.new("", 'r+')
a.puts("hoge", "bar", "foo")
a.string #=> "hoge\nbar\nfoo\n"
//}

絞り込み条件を変える

StringIO#seek(offset, whence = IO::SEEK_SET) -> 0 (9040.0)

自身の pos を whence の位置から offset バイトだけ移動させます。

自身の pos を whence の位置から offset バイトだけ移動させます。

@param offset 移動させたいバイト数を整数で指定します。

@param whence 以下のいずれかの定数を指定します。

* IO::SEEK_SET: ファイルの先頭から (デフォルト)
* IO::SEEK_CUR: 現在のファイルポインタから
* IO::SEEK_END: ファイルの末尾から

@raise Errno::EINVAL offset + whence がマイナスである場合に発生します。

@raise ArgumentError whence が上の SEE...

StringIO#write(*obj) -> Integer (9040.0)

自身に obj を書き込みます。obj が文字列でなければ to_s による文字列化を試みます。 書き込まれた文字列の長さを返します。

自身に obj を書き込みます。obj が文字列でなければ to_s による文字列化を試みます。
書き込まれた文字列の長さを返します。

全ての出力メソッドは、最終的に「write」という名のメソッドを呼び出すので、
このメソッドを置き換えることで出力関数の挙動を変更することができます。

@param obj 書き込みたいオブジェクトを指定します。

@raise IOError 自身が書き込み可能でない時に発生します。

//emlist[例][ruby]{
require "stringio"
a = StringIO.new("hoge", 'r+')
a.write("aaa") ...

StringScanner#exist?(regexp) -> Integer | nil (9040.0)

スキャンポインタの位置から,次にマッチする文字列の末尾までの長さを返します。

スキャンポインタの位置から,次にマッチする文字列の末尾までの長さを返します。

マッチに失敗したら nil を返します。

このメソッドはマッチが成功してもスキャンポインタを進めません。

@param regexp マッチに用いる正規表現を指定します。

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

s = StringScanner.new('test string')
s.exist?(/s/) # => 3
s.exist?(//) # => 0
s.scan(/\w+/) # => "test"
s.exist?(/s/) # => 2
s.exis...

StringScanner#match?(regexp) -> Integer | nil (9040.0)

スキャンポインタの地点だけで regexp と文字列のマッチを試します。 マッチしたら、スキャンポインタは進めずにマッチした 部分文字列の長さを返します。マッチしなかったら nil を 返します。

スキャンポインタの地点だけで regexp と文字列のマッチを試します。
マッチしたら、スキャンポインタは進めずにマッチした
部分文字列の長さを返します。マッチしなかったら nil を
返します。

マッチしたサイズは文字単位でなくバイト単位となります。

//emlist[][ruby]{
require 'strscan'
def case1(encode)
utf8 = "\u{308B 3073 3044}"
s = StringScanner.new(utf8.encode(encode))
s.match?(/#{"\u{308B}".encode(encode)}/)...

StringScanner#pointer=(n) (9040.0)

スキャンポインタのインデックスを n にセットします。

スキャンポインタのインデックスを n にセットします。

@param n 整数で、バイト単位で指定します。
負数を指定すると文字列の末尾からのオフセットとして扱います。
@raise RangeError マッチ対象の文字列の長さを超える値を指定すると発生します。

@return n を返します。

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

s = StringScanner.new('test string')
p s.scan(/\w+/) # => "test"
p s.pos = 1 # => 1
p s.scan(/\...

絞り込み条件を変える

StringScanner#pos=(n) (9040.0)

スキャンポインタのインデックスを n にセットします。

スキャンポインタのインデックスを n にセットします。

@param n 整数で、バイト単位で指定します。
負数を指定すると文字列の末尾からのオフセットとして扱います。
@raise RangeError マッチ対象の文字列の長さを超える値を指定すると発生します。

@return n を返します。

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

s = StringScanner.new('test string')
p s.scan(/\w+/) # => "test"
p s.pos = 1 # => 1
p s.scan(/\...

StringScanner#skip(regexp) -> Integer | nil (9040.0)

スキャンポインタの地点だけで regexp と文字列のマッチを試します。 マッチしたらスキャンポインタを進めマッチした部分文字列の 長さを返します。マッチしなかったら nil を返します。

スキャンポインタの地点だけで regexp と文字列のマッチを試します。
マッチしたらスキャンポインタを進めマッチした部分文字列の
長さを返します。マッチしなかったら nil を返します。

@param regexp マッチに使用する正規表現を指定します。

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

s = StringScanner.new('test string')
p s.skip(/\w+/) #=> 4
p s.skip(/\w+/) #=> nil
p s.skip(/\s+/) #=> 1
p s.skip(/\w+/) #=...

StringScanner#skip_until(regexp) -> Integer | nil (9040.0)

regexp が一致するまで文字列をスキャンします。 マッチに成功したらスキャンポインタを進めて、 スキャン開始位置からマッチ部分の末尾までの部分文字列の長さを返します。 マッチに失敗したら nil を返します。

regexp が一致するまで文字列をスキャンします。
マッチに成功したらスキャンポインタを進めて、
スキャン開始位置からマッチ部分の末尾までの部分文字列の長さを返します。
マッチに失敗したら nil を返します。

@param regexp マッチに使用する正規表現を指定します。

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

s = StringScanner.new('test string')
s.scan_until(/str/) # => 8
s.matched # => "str"
s.pos # =>...

StringIO#<<(obj) -> self (9022.0)

obj を pos の位置に書き込みます。 必要なら obj.to_s を呼んで 文字列に変換します。 self を返します。

obj を pos の位置に書き込みます。 必要なら obj.to_s を呼んで
文字列に変換します。 self を返します。

@param obj 自身に書き込みたい、文字列か to_s が定義されたオブジェクトを指定します。

StringIO#each(rs = $/) -> Enumerator (9022.0)

自身から 1 行ずつ読み込み、それを引数として与えられたブロックを実行します。

自身から 1 行ずつ読み込み、それを引数として与えられたブロックを実行します。

@param rs 行の区切りを文字列で指定します。rs に nil を指定すると行区切りなしとみなします。空文字列 "" を指定すると連続する改行を行の区切りとみなします(パラグラフモード)。

@raise IOError 自身が読み取り不可なら発生します。

//emlist[例][ruby]{
require "stringio"
a = StringIO.new("hoge\nfoo\n")
a.each{|l| p l }
#=> "hoge\n"
# "foo\n"
//}

@see $/
...

絞り込み条件を変える

StringIO#each(rs = $/) {|line| ... } -> self (9022.0)

自身から 1 行ずつ読み込み、それを引数として与えられたブロックを実行します。

自身から 1 行ずつ読み込み、それを引数として与えられたブロックを実行します。

@param rs 行の区切りを文字列で指定します。rs に nil を指定すると行区切りなしとみなします。空文字列 "" を指定すると連続する改行を行の区切りとみなします(パラグラフモード)。

@raise IOError 自身が読み取り不可なら発生します。

//emlist[例][ruby]{
require "stringio"
a = StringIO.new("hoge\nfoo\n")
a.each{|l| p l }
#=> "hoge\n"
# "foo\n"
//}

@see $/
...

StringIO#each_line(rs = $/) -> Enumerator (9022.0)

自身から 1 行ずつ読み込み、それを引数として与えられたブロックを実行します。

自身から 1 行ずつ読み込み、それを引数として与えられたブロックを実行します。

@param rs 行の区切りを文字列で指定します。rs に nil を指定すると行区切りなしとみなします。空文字列 "" を指定すると連続する改行を行の区切りとみなします(パラグラフモード)。

@raise IOError 自身が読み取り不可なら発生します。

//emlist[例][ruby]{
require "stringio"
a = StringIO.new("hoge\nfoo\n")
a.each{|l| p l }
#=> "hoge\n"
# "foo\n"
//}

@see $/
...

StringIO#each_line(rs = $/) {|line| ... } -> self (9022.0)

自身から 1 行ずつ読み込み、それを引数として与えられたブロックを実行します。

自身から 1 行ずつ読み込み、それを引数として与えられたブロックを実行します。

@param rs 行の区切りを文字列で指定します。rs に nil を指定すると行区切りなしとみなします。空文字列 "" を指定すると連続する改行を行の区切りとみなします(パラグラフモード)。

@raise IOError 自身が読み取り不可なら発生します。

//emlist[例][ruby]{
require "stringio"
a = StringIO.new("hoge\nfoo\n")
a.each{|l| p l }
#=> "hoge\n"
# "foo\n"
//}

@see $/
...

StringIO#lineno=(n) (9022.0)

現在の行番号を n にセットします。

現在の行番号を n にセットします。

@param n 行番号を整数で指定します。

StringIO#putc(ch) -> object (9022.0)

文字 ch を自身に書き込みます。 ch が数字なら 0 〜 255 の範囲の対応する文字書き込みます。 ch が文字列なら、その先頭の文字を書き込みます。ch を返します。

文字 ch を自身に書き込みます。 ch が数字なら 0 〜 255 の範囲の対応する文字書き込みます。
ch が文字列なら、その先頭の文字を書き込みます。ch を返します。

@param ch 書き込みたい文字を、整数か文字列で指定します。ch が Float や Rational であっても、整数に変換されてから書き込まれます。

@raise IOError 自身が書き込み用にオープンされていなければ発生します。

絞り込み条件を変える

StringIO#sync=(bool) (9022.0)

何もせずに bool を返します。

何もせずに bool を返します。

@param bool true か false を指定します。

StringIO#syswrite(obj) -> Integer (9022.0)

自身に obj を書き込みます。StringIO#write と同じです。

自身に obj を書き込みます。StringIO#write と同じです。

@param obj 書き込みたいオブジェクトを指定します。

@raise IOError 自身が書き込み用にオープンされていなければ発生します。

StringIO#ungetbyte(char) -> nil (9022.0)

指定された char を読み戻します。

指定された char を読み戻します。

2バイト以上の読み戻しは保証されません。

@param char 読み戻したい1文字かそのコードポイントを指定します。

@see IO#ungetbyte

StringIO#write_nonblock(obj) -> Integer (9022.0)

自身に obj を書き込みます。StringIO#write と同じです。

自身に obj を書き込みます。StringIO#write と同じです。

@param obj 書き込みたいオブジェクトを指定します。

@raise IOError 自身が書き込み用にオープンされていなければ発生します。

UNIXSocket#recvfrom(maxlen, flags = 0) -> [String [String, String]] (949.0)

recvfrom(2) を用いてソケットからメッセージを受け取ります。

recvfrom(2) を用いてソケットからメッセージを受け取ります。

maxlen で受け取るメッセージの最大長をバイト数で指定します。

flags には Socket::MSG_* という名前の定数の bitwise OR を渡します。

戻り値は文字列と相手ソケットのパスのペアです。

例:

require 'socket'

UNIXServer.open("/tmp/s") {|serv|
c = UNIXSocket.open("/tmp/s")
s = serv.accept
s.send "a", 0
p c.recvfrom(10...

絞り込み条件を変える

<< < 1 2 3 4 ... > >>