種類
- インスタンスメソッド (165)
- 文書 (22)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (11) - append (11)
- gsub! (44)
-
ruby 1
. 6 feature (11) - sub (33)
- sub! (33)
検索結果
先頭5件
-
String
# gsub(pattern , replace) -> String (21506.0) -
文字列中で pattern にマッチする部分全てを 文字列 replace で置き換えた文字列を生成して返します。
...した文字列と置き換える文字列
//emlist[例][ruby]{
p 'abcdefg'.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 引数......ていないからです。
また、gsub では「\」が部分文字列との置き換えという特別な意味を持つため、
replace に「\」自身を入れたいときは
「\」を二重にエスケープしなければなりません。
//emlist[ひとつめの括弧の内容に置......{
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-bbb" # O... -
String
# gsub(pattern) {|matched| . . . . } -> String (21351.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 , hash) -> String (21351.0) -
文字列中の 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
# gsub(pattern) -> Enumerator (21251.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) -> self | nil (9404.0) -
文字列中で pattern にマッチする部分全てを文字列 replace に破壊的に置き換えます。
...換文字列内では \`、\'、\+ も使えます。
これらは $`、$'、$+ に対応します。
gsub! は通常 self を変更して返しますが、
置換が起こらなかった場合は nil を返します。
@param pattern 置き換える文字列のパターンを表す文字列か......場合は 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 を使うことはできません。
replace は gsub メソッ......ドの呼び出しより先に評価されるので、
まだ gsub の正規表現マッチが行われておらず、
$1 がセットされていないからです。
また、gsub では「\」が部分文字列との置き換えという特別な意味を持つため、
replace に「\」自身... -
String
# gsub!(pattern) {|matched| . . . . } -> self | nil (9334.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 , hash) -> self | nil (9334.0) -
文字列中の pattern にマッチした部分をキーにして hash を引いた値へ破壊的に置き換えます。
...ttern 置き換える文字列のパターン
@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) -> Enumerator (9234.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... -
ruby 1
. 6 feature (6336.0) -
ruby 1.6 feature ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン になります。
...sion 1.6 は安定版です。この版での変更はバグ修正がメイン
になります。
((<stable-snapshot|URL:ftp://ftp.netlab.co.jp/pub/lang/ruby/stable-snapshot.tar.gz>)) は、日々更新される安定版の最新ソースです。
== 1.6.8 (2002-12-24) -> stable-snapshot
: 2003-0......upcase!
p a
=> ruby 1.6.7 (2002-03-01) [i586-linux]
"KEY"
=> -:3:in `upcase!': can't modify frozen string (TypeError)
from -:3
ruby 1.6.7 (2002-08-01) [i586-linux]
: 2002-06-10 Fixnum#>>, <<
負の数に対して右シフトすると......oo < String
end
p Foo.new("").class
p Foo.new("foo")[0,0].class # String ???
p Foo.new("foo")[1,1].class
p Foo.new("foo").succ.class
p Foo.new("foo").reverse.class
p((Foo.new("foo") * 5).class)
p Foo.new("foo").gsub(/foo/,... -
Net
:: IMAP # append(mailbox , message , flags = nil , date _ time = nil) -> Net :: IMAP :: TaggedResponse (3412.0) -
APPEND コマンドを送ってメッセージをメールボックスの末尾に追加します。
...をメールボックスの末尾に追加します。
例:
imap.append("inbox", <<EOF.gsub(/\n/, "\r\n"), [:Seen], Time.now)
Subject: hello
From: someone@example.com
To: somebody@example.com
hello world
EOF
@param mailbox メッセージを追加するメールボックス名(文......セージ文字列
@param flags メッセージに付加するフラグ(Symbol の配列)
@param date_time メッセージの時刻(Time オブジェクト)。省略時は現在時刻が使われる
@raise Net::IMAP::NoResponseError メールボックスが存在しない場合に発生します...