別のキーワード
ライブラリ
- ビルトイン (413)
キーワード
検索結果
先頭5件
-
String
# rindex(pattern , pos = self . size) -> Integer | nil (256.0) -
文字列のインデックス pos から左に向かって pattern を探索します。 最初に見つかった部分文字列の左端のインデックスを返します。 見つからなければ nil を返します。
...文字列のインデックス pos から左に向かって pattern を探索します。
最初に見つかった部分文字列の左端のインデックスを返します。
見つからなければ nil を返します。
引数 pattern は探索する部分文字列または正規表現で指......定します。
pos が負の場合は、文字列の末尾から数えた位置から探索します。
rindex と String#index とでは、探索方向だけが逆になります。
完全に左右が反転した動作をするわけではありません。
探索はその開始位置を右か......//emlist[String#index の場合][ruby]{
p "stringstring".index("ing", 1) # => 3
# ing # ここから探索を始める
# ing
# ing # 右にずらしていってここで見つかる
//}
//emlist[String#rindex の場合][ruby]{
p "stringstring".rindex("ing", -1) # =>... -
String
# tr _ s!(pattern , replace) -> self | nil (250.0) -
文字列の中に pattern 文字列に含まれる文字が存在したら、 replace 文字列の対応する文字に置き換えます。さらに、 置換した部分内に同一の文字の並びがあったらそれを 1 文字に圧縮します。
...pattern 文字列に含まれる文字が存在したら、
replace 文字列の対応する文字に置き換えます。さらに、
置換した部分内に同一の文字の並びがあったらそれを 1 文字に圧縮します。
pattern の形式は tr(1) と同じです。
つまり「a-c......c を意味し、
"^0-9" のように文字列の先頭が「^」の場合は指定した文字以外が置換の対象になります。
replace でも「-」を使って範囲を指定できます。
//emlist[][ruby]{
p "gooooogle".tr_s("a-z", "A-Z") # => "GOGLE"
//}
「-」は文字列の両......合にだけ範囲指定の意味になります。
同様に、「^」もその効果は文字列の先頭にあるときだけです。
また、「-」、「^」、「\」はバックスラッシュ (「\」) でエスケープできます。
replace の範囲が search の範囲よりも小さ... -
String
# tr _ s(pattern , replace) -> String (250.0) -
文字列の中に pattern 文字列に含まれる文字が存在したら、 replace 文字列の対応する文字に置き換えます。さらに、 置換した部分内に同一の文字の並びがあったらそれを 1 文字に圧縮します。
...pattern 文字列に含まれる文字が存在したら、
replace 文字列の対応する文字に置き換えます。さらに、
置換した部分内に同一の文字の並びがあったらそれを 1 文字に圧縮します。
pattern の形式は tr(1) と同じです。
つまり「a-c......」は a から c を意味し、
"^0-9" のように文字列の先頭が「^」の場合は指定した文字以外が置換の対象になります。
replace でも「-」を使って範囲を指定できます。
「-」は文字列の両端にない場合にだけ範囲指定の意味にな......です。
また、「-」、「^」、「\」はバックスラッシュ (「\」) でエスケープできます。
replace の範囲が pattern の範囲よりも小さい場合、
replace の最後の文字が無限に続くものとして扱われます。
@param pattern 置き換える文... -
String
# byteindex(pattern , offset = 0) -> Integer | nil (244.0) -
文字列の offset から右に向かって pattern を検索し、 最初に見つかった部分文字列の左端のバイト単位のインデックスを返します。 見つからなければ nil を返します。
...文字列の offset から右に向かって pattern を検索し、
最初に見つかった部分文字列の左端のバイト単位のインデックスを返します。
見つからなければ nil を返します。
引数 pattern は探索する部分文字列または正規表現で指定......ます。
@param pattern 探索する部分文字列または正規表現
@param offset 探索を開始するバイト単位のオフセット
@raise IndexError オフセットが文字列の境界以外をさしているときに発生します。
//emlist[例][ruby]{
'foo'.byteindex('f')......dex('o', 3) # => nil
'foo'.byteindex('o', -1) # => 2
'foo'.byteindex('o', -2) # => 1
'foo'.byteindex('o', -3) # => 1
'foo'.byteindex('o', -4) # => nil
'あいう'.byteindex('う') # => 6
'あいう'.byteindex('う', 3) # => 6
'あいう'.byteindex('う', -3) # => 6
'あいう'.byteindex('う', 1)... -
String
# each _ codepoint -> Enumerator (244.0) -
文字列の各コードポイントに対して繰り返します。
...各コードポイントに対して繰り返します。
UTF-8/UTF-16(BE|LE)/UTF-32(BE|LE) 以外のエンコーディングに対しては
各文字のバイナリ表現由来の値になります。
//emlist[例][ruby]{
#coding:UTF-8
"hello わーるど".each_codepoint.to_a
# => [104, 101, 108,......108, 111, 32, 12431, 12540, 12427, 12393]
"hello わーるど".encode('euc-jp').each_codepoint.to_a
# => [104, 101, 108, 108, 111, 32, 42223, 41404, 42219, 42185]
//}
@see String#codepoints... -
String
# to _ r -> Rational (238.0) -
自身を有理数(Rational)に変換した結果を返します。
...自身を有理数(Rational)に変換した結果を返します。
Kernel.#Rational に文字列を指定した時のように、以下のいずれかの形
式で指定します。
* "1/3" のような分数の形式
* "0.3" のような10進数の形式
* "0.3E0" のような x.xEn の形......コアで繋いだ形式
//emlist[例][ruby]{
' 2 '.to_r # => (2/1)
'1/3'.to_r # => (1/3)
'-9.2'.to_r # => (-46/5)
'-9.2E2'.to_r # => (-920/1)
'1_234_567'.to_r # => (1234567/1)
'1_234/5_678'.to_r # => (617/2839)
//}
Kernel.#Rational に文字列を指定した時と......文字列は
無視されます。
//emlist[][ruby]{
'21 june 09'.to_r # => (21/1)
'21/06/09'.to_r # => (7/2) # 21/6 を約分して 7/2。
//}
変換できないような文字列を指定した場合は 0/1 を返します。
//emlist[][ruby]{
'foo'.to_r # => (0/1)
''.to_r... -
String
# gsub!(pattern , replace) -> self | nil (236.0) -
文字列中で pattern にマッチする部分全てを文字列 replace に破壊的に置き換えます。
...文字列中で pattern にマッチする部分全てを文字列 replace に破壊的に置き換えます。
置換文字列 replace 中の \& と \0 はマッチした部分文字列に、
\1 ... \9 は n 番目の括弧の内容に置き換えられます。
置換文字列内では \`、\'......った場合は nil を返します。
@param pattern 置き換える文字列のパターンを表す文字列か正規表現。
文字列を指定した場合は全く同じ文字列にだけマッチする
@param replace pattern で指定した文字列と置き換える......した場合は self、置換しなかった場合は nil
//emlist[例][ruby]{
buf = "String-String"
buf.gsub!(/in./, "!!")
p buf # => "Str!!-Str!!"
buf = "String.String"
buf.gsub!(/in./, '<<\&>>')
p buf # => "Str<<ing>>-Str<<ing>>"
//}
注意:
引数 replace の中で $1 を使うことは... -
String
# gsub(pattern , hash) -> String (235.0) -
文字列中の pattern にマッチした部分をキーにして hash を引いた値で置き換えます。
...文字列中の pattern にマッチした部分をキーにして hash を引いた値で置き換えます。
@param pattern 置き換える文字列のパターン
@param hash 置き換える文字列を与えるハッシュ
//emlist[例][ruby]{
hash = {'b'=>'B', 'c'=>'C'}
p "abcabc".... -
String
# sub(pattern , hash) -> String (235.0) -
文字列中の pattern にマッチした部分をキーにして hash を引いた値で置き換えます。
...文字列中の pattern にマッチした部分をキーにして hash を引いた値で置き換えます。
@param pattern 置き換える文字列のパターン
@param hash 置き換える文字列を与えるハッシュ
//emlist[例][ruby]{
hash = {'b'=>'B', 'c'=>'C'}
p "abcabc".... -
String
# sub!(pattern , replace) -> self | nil (234.0) -
文字列中で pattern にマッチした最初の部分を文字列 replace へ破壊的に置き換えます。
...文字列中で pattern にマッチした最初の部分を文字列 replace へ破壊的に置き換えます。
置換文字列 replace 中の \& と \0 はマッチした部分文字列に、
\1 ... \9 は n 番目の括弧の内容に置き換えられます。
置換文字列内では \`、\......った場合は nil を返します。
@param pattern 置き換える文字列のパターンを表す文字列か正規表現。
文字列を指定した場合は全く同じ文字列にだけマッチする
@param replace pattern で指定した文字列と置き換える......た場合は self、置換しなかった場合は nil
//emlist[例][ruby]{
buf = "String-String"
buf.sub!(/in./, "!!")
p buf # => "Str!!-String"
buf = "String.String"
buf.sub!(/in./, '<<\&>>')
p buf # => "Str<<ing>>-String"
//}
注意:
引数 replace の中で $1 を使うことはできま...