るりまサーチ

最速Rubyリファレンスマニュアル検索!
1791件ヒット [101-200件を表示] (0.070秒)
トップページ > クエリ:ruby[x] > 種類:インスタンスメソッド[x] > クエリ:>[x] > クエリ:@[x] > クラス:String[x]

別のキーワード

  1. rbconfig ruby
  2. fiddle ruby_free
  3. fiddle build_ruby_platform
  4. rake ruby
  5. rubygems/defaults ruby_engine

ライブラリ

キーワード

検索結果

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

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

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

...て扱われます。

@
param pattern 置き換える文字のパターン
@
param replace pattern で指定した文字を置き換える文字

//emlist[例][ruby]{
p "foo".tr("f", "X") # => "Xoo"
p "foo".tr('a-z', 'A-Z') # => "FOO"
p "FOO".tr('A-Z', 'a-z') # => "foo"

# シーザー...
...
p "ORYV".tr("A-Z", "D-ZA-C") # => "RUBY"

# 全角英数字といくつかの記号の半角化
email = "ruby−langexample.com"
p email.tr("0-9a-zA-Z.−", "0-9a-zA-Z.@-")
# => "ruby-lang@example.com"
//}

@
see String#tr!, String#tr_s...

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

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

...

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

//emlist[例][ruby]{
p 'a...
...bcdefg'.gsub(/def/, '!!') # => "abc!!g"
p 'abcabc'.gsub(/b/, '<<\&>>') # => "a<<b>>ca<<b>>c"
p 'xxbbxbb'.gsub(/x+(b+)/, 'X<<\1>>') # => "X<<bb>>X<<bb>>"
p '2.5'.gsub('.', ',') # => "2,5"
//}

注意:

第 2 引数 replace に $1 を埋め込んでも意図した結果にはなり...
...い][ruby]{
p 'xbbb-xbbb'.gsub(/x(b+)/, "#{$1}") # => "-" # NG
p 'xbbb-xbbb'.gsub(/x(b+)/, "\1") # => "1-1" # NG
p 'xbbb-xbbb'.gsub(/x(b+)/, "\\1") # => "bbb-bbb" # OK
p 'xbbb-xbbb'.gsub(/x(b+)/, '\1') # => "bbb-bbb" # OK
p 'xbbb-xbbb'.gsub(/x(b+)/, '\\1') # => "bbb...

String#chr -> String (150.0)

self の最初の文字だけを含む文字列を返します。

...す。

//emlist[例][ruby]{
a = "abcde"
a.chr #=> "a"
//}

Ruby
1.9 で IO#getc の戻り値が Integer から String を返すように変更になりました。
Ruby
1.8 以前と1.9以降の互換性を保つために String#chr が存在します。

例:
# ruby 1.8 系では STDIN.getc...
...が 116 を返すため Integer#chr が呼び出される
$ echo test | ruby -e "p STDIN.getc.chr" # => "t"
# ruby 1.9 系以降では STDIN.getc が "t" を返すため String#chr が呼び出される
$ echo test | ruby -e "p STDIN.getc.chr" # => "t"

@
see String#ord, Integer#chr...

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

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#d...
...elete_prefix!
@
see String#delete_suffix
@
see String#end_with?...

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

文字列の末尾から 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!
@
see String#end_with?...

絞り込み条件を変える

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

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

...

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

//emlist[例][ruby]{
p 'a...
...bcdefg'.sub(/def/, '!!') # => "abc!!g"
p 'abcabc'.sub(/b/, '<<\&>>') # => "a<<b>>cabc"
p 'xxbbxbb'.sub(/x+(b+)/, 'X<<\1>>') # => "X<<bb>>xbb"
//}

注意:

第 2 引数 replace に $1 を埋め込んでも意図した結果にはなりません。
この文字列が評価される...
...い][ruby]{
p 'xbbb-xbbb'.sub(/x(b+)/, "#{$1}") # => "-xbbb" # NG
p 'xbbb-xbbb'.sub(/x(b+)/, "\1") # => "1-xbbb" # NG
p 'xbbb-xbbb'.sub(/x(b+)/, "\\1") # => "bbb-xbbb" # OK
p 'xbbb-xbbb'.sub(/x(b+)/, '\1') # => "bbb-xbbb" # OK
p 'xbbb-xbbb'.sub(/x(b+)/, '\\1') # => "bbb-...

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

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

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

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

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

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

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

@
see String#slice
@
see String#bytesplice...

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

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

...します。

@
param pattern 置き換える文字列のパターンを表す文字列か正規表現。
文字列を指定した場合は全く同じ文字列にだけマッチする
@
param replace pattern で指定した文字列と置き換える文字列
@
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 を使うことはでき...
...ケープしなければなりません。

//emlist[ひとつめの括弧にマッチした部分に置き換えるときによくやる間違い][ruby]{
'abbbcd'.gsub!(/a(b+)/, "#{$1}") # NG
'abbbcd'.gsub!(/a(b+)/, "\1") # NG
'abbbcd'.gsub!(/a(b+)/, "\\1") # OK
'abbbcd'.gsub...

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

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

...します。

@
param pattern 置き換える文字列のパターンを表す文字列か正規表現。
文字列を指定した場合は全く同じ文字列にだけマッチする
@
param replace pattern で指定した文字列と置き換える文字列
@
return 置換し...
...た場合は 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 を使うことはできま...
...ければなりません。

//emlist[ひとつめの括弧にマッチした部分に置き換えるときによくやる間違いと正しい例][ruby]{
'abbbcd'.sub!(/a(b+)/, "#{$1}") # NG
'abbbcd'.sub!(/a(b+)/, "\1") # NG
'abbbcd'.sub!(/a(b+)/, "\\1") # OK
'abbbcd'.sub!(/a...

String#lines(rs = $/, chomp: false) -> [String] (144.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 には区...
...s を取り除きます。

//emlist[][ruby]{
"hello\nworld\n".lines # => ["hello\n", "world\n"]
"hello\nworld\n".lines(chomp: true) # => ["hello", "world"]
//}

@
param rs 行末を示す文字列

@
param chomp 分割した各行に対して String#chomp と同等の結果を得...
...省略した場合は false を指定したとみなされます。

ブロックが指定された場合は String#each_line と同じように動作します。

Ruby
2.6 までは deprecated の警告が出ますが、Ruby 2.7 で警告は削除されました。

@
see String#each_line...

絞り込み条件を変える

String#lines(rs = $/, chomp: false) {|line| ... } -> self (144.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 には区...
...s を取り除きます。

//emlist[][ruby]{
"hello\nworld\n".lines # => ["hello\n", "world\n"]
"hello\nworld\n".lines(chomp: true) # => ["hello", "world"]
//}

@
param rs 行末を示す文字列

@
param chomp 分割した各行に対して String#chomp と同等の結果を得...
...省略した場合は false を指定したとみなされます。

ブロックが指定された場合は String#each_line と同じように動作します。

Ruby
2.6 までは deprecated の警告が出ますが、Ruby 2.7 で警告は削除されました。

@
see String#each_line...

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

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

...します。

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

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

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

@
see String#slice
@
see String#bytesplice...
<< < 1 2 3 4 ... > >>