るりまサーチ (Ruby 2.4.0)

最速Rubyリファレンスマニュアル検索!
19件ヒット [1-19件を表示] (0.007秒)
トップページ > クラス:String[x] > クエリ:sub[x] > バージョン:2.4.0[x]

別のキーワード

  1. _builtin sub
  2. pathname sub
  3. string sub
  4. string sub!
  5. _builtin sub!

ライブラリ

キーワード

検索結果

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

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

...の可読性を上げるには、
\& や \1 よりも下記のようにブロック付き形式の sub を使うべきです。

//emlist[安全な例][ruby]{
p 'xbbb-xbbb'.sub(/x(b+)/) { $1 } # => "bbb-xbbb" # OK

puts '\n'.sub(/\\/) { '\\\\' } # => \\n # OK
//}

@see String#gsub...

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

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

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

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

@see String#gsub...

String#sub(pattern, hash) -> String (18136.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#sub!(pattern, replace) -> self | nil (6180.0)

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

...合は 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 を使うことはできません...
...b!(/a(b+)/, "#{$1}") # NG
'abbbcd'.sub!(/a(b+)/, "\1") # NG
'abbbcd'.sub!(/a(b+)/, "\\1") # OK
'abbbcd'.sub!(/a(b+)/, '\\1') # OK
'abbbcd'.sub!(/a(b+)/, '\1') # OK
'abbbcd'.sub!(/a(b+)/) { $1 } # OK これがもっとも安全
//}

@see String#gsub...

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

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

...は全く同じ文字列にだけマッチする
@return 置換した場合は self、置換しなかった場合は nil

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

str = 'abcabc'
str.sub!(/b/) { $&.upcase }
p str #=> "aBcabc"
//}

@see String#gsub...

絞り込み条件を変える

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

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

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

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

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

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

...は全く同じ文字列にだけマッチする
@return 置換した場合は self、置換しなかった場合は nil

//emlist[例][ruby]{
str = 'abcabc'
str.gsub!(/b/) {|s| s.upcase }
p str #=> "aBcaBc"

str = 'abcabc'
str.gsub!(/b/) { $&.upcase }
p str #=> "aBcaBc"
//}

@see String#sub...

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

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

...は全く同じ文字列にだけマッチする
@return 置換した場合は self、置換しなかった場合は nil

//emlist[例][ruby]{
str = 'abcabc'
str.gsub!(/b/) {|s| s.upcase }
p str #=> "aBcaBc"

str = 'abcabc'
str.gsub!(/b/) { $&.upcase }
p str #=> "aBcaBc"
//}

@see String#sub...

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

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

...
@return 置換した場合は 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...
...a(b+)/, "#{$1}") # NG
'abbbcd'.gsub!(/a(b+)/, "\1") # NG
'abbbcd'.gsub!(/a(b+)/, "\\1") # OK
'abbbcd'.gsub!(/a(b+)/, '\\1') # OK
'abbbcd'.gsub!(/a(b+)/, '\1') # OK
'abbbcd'.gsub!(/a(b+)/) { $1 } # OK これがもっとも安全
//}

@see String#sub...

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

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

...表現。
文字列を指定した場合は全く同じ文字列にだけマッチする
@return 新しい文字列

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

@see String#sub, String#scan...

絞り込み条件を変える

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

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

...表現。
文字列を指定した場合は全く同じ文字列にだけマッチする
@return 新しい文字列

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

@see String#sub, String#scan...

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

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

...、コードの可読性を上げるには、
\& や \1 よりも下記のようにブロック付き形式の gsub を使うべきです。

//emlist[][ruby]{
p 'xbbb-xbbb'.gsub(/x(b+)/) { $1 } # => "bbb-bbb" # OK

puts '\n'.gsub(/\\/) { '\\\\' } # => \\n # OK
//}

@see String#sub...

String#gsub!(pattern, hash) -> self | nil (6104.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#gsub(pattern, hash) -> String (6104.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#[](substr) -> String | nil (102.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#[]=(substr, val) (102.0)

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

...列と置き換える文字列

@return val を返します。

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

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

buf = "string"
buf["nosuchstring"] = "!!" # IndexError
//}...

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

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

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

@param substr 検索する文字列

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

String#slice!(substr) -> String (102.0)

指定した範囲 (String#[] 参照) を 文字列から取り除いたうえで取り除いた部分文字列を返します。

...(String#[] 参照) を
文字列から取り除いたうえで取り除いた部分文字列を返します。

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

//emlist[例][ruby]{
string
= "this is a string"
string
.slice!(2) #=> "i"
string
.slice!(3..6) #=> " is "
string
.sl...
...ice!(/s.*t/) #=> "sa st"
string
.slice!("r") #=> "r"
string
#=> "thing"
//}...

String#slice(substr) -> String | nil (102.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
//}