種類
- インスタンスメソッド (461)
- 文書 (144)
- 特異メソッド (29)
- クラス (16)
クラス
- MatchData (24)
-
Net
:: Telnet (4) - OptionParser (144)
- Regexp (93)
- String (161)
- StringScanner (24)
- Symbol (15)
モジュール
- Kernel (24)
-
Test
:: Unit (1)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (12) - == (24)
- === (12)
- Regexp (4)
- Rubyで使われる記号の意味(正規表現の複雑な記号は除く) (12)
- Ruby用語集 (12)
- StringScanner (12)
- [] (72)
- casefold? (12)
- compile (12)
-
egrep
_ cpp (24) - eql? (24)
-
fixed
_ encoding? (12) - match? (27)
- new (16)
- on (144)
-
ruby 1
. 6 feature (12) -
ruby 1
. 8 . 2 feature (12) -
ruby 1
. 8 . 3 feature (12) -
ruby 1
. 8 . 4 feature (12) -
ruby 1
. 9 feature (12) -
scan
_ full (12) -
search
_ full (12) -
setup
_ argv (1) - slice (72)
-
start
_ with? (14) - クラス/メソッドの定義 (12)
- 制御構造 (12)
- 多言語化 (12)
検索結果
-
正規表現 (15345.0)
-
正規表現 * metachar * expansion * char * anychar * string * str * quantifier * capture * grouping * subexp * selector * anchor * cond * option * encoding * comment * free_format_mode * absenceop * list * specialvar * references
...正規表現
* metachar
* expansion
* char
* anychar
* string
* str
* quantifier
* capture
* grouping
* subexp
* selector
* anchor
* cond
* option
* encoding
* comment
* free_format_mode
* absenceop
* list
* specialvar
* references
正規表現(regular ex......ession)は文字列のパターンを記述するための言語です。
また、この言語で記述されたパターンも正規表現と呼びます。
正規表現を用いると、文字列が指定したパターンを含んでいるかどうかを判定し、
また含んでいるなら......d</b>")
# => #<MatchData "bold">
# 以下は上の正規表現と同じものを表す
/<b>\K\w+(?=<\/b>)/.match("Fortune favours the <b>bold</b>")
# => #<MatchData "bold">
//}
===[a:cond] 条件分岐
(?(cond)pat) もしくは (?(cond)truepat|falsepat) という
記法で条件分岐を記述で... -
Rubyで使われる記号の意味(正規表現の複雑な記号は除く) (3141.0)
-
Rubyで使われる記号の意味(正規表現の複雑な記号は除く) ex q num per and or plus minus ast slash hat sq period comma langl rangl eq tilde dollar at under lbrarbra lbra2rbra2 lbra3rbra3 dq colon ac backslash semicolon
...Rubyで使われる記号の意味(正規表現の複雑な記号は除く)
ex q num per and or
plus minus ast slash hat sq
period comma langl rangl eq tilde
dollar at under lbrarbra
lbra2rbra2 lbra3rbra3 dq colon ac
backslash semicol......名の(! の無い)メソッドに比べてより破壊的な作用をもつメソッド(例: tr と tr!)で使われます。
: /xxx/ !~ yyy
正規表現のメソッド =~ の否定。マッチが失敗したらtrueを返します。
===[a:q] ?
: ?a
d:spec/literal#string。長さ 1 の文......は空の正規表現を意味する
===[a:hat] ^
: true ^ true
「xor」演算子。排他的論理和。または類似のメソッド。
: a ^= true
「^」演算子の自己代入演算子。aの論理値の反転。
//emlist{
p(a=true);p(a^=true);p(a^=true) #=> true false true
//}... -
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (184.0) -
1.6.8から1.8.0への変更点(まとめ) * ((<1.6.8から1.8.0への変更点(まとめ)/インタプリタの変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたクラス/モジュール>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたメソッド>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加された定数>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張されたクラス/メソッド(互換性のある変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/文法の変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/正規表現>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Marshal>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Windows 対応>)) * ((<1.6.8から1.8.0への変更点(まとめ)/廃止された(される予定の)機能>)) * ((<1.6.8から1.8.0への変更点(まとめ)/ライブラリ>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張ライブラリAPI>)) * ((<1.6.8から1.8.0への変更点(まとめ)/バグ修正>)) * ((<1.6.8から1.8.0への変更点(まとめ)/サポートプラットフォームの追加>))
...互換性のない変更)>))
* ((<1.6.8から1.8.0への変更点(まとめ)/文法の変更>))
* ((<1.6.8から1.8.0への変更点(まとめ)/正規表現>))
* ((<1.6.8から1.8.0への変更点(まとめ)/Marshal>))
* ((<1.6.8から1.8.0への変更点(まとめ)/Windows 対応>))
* ((<1.6.8か......数/$VERBOSE>))
三段階のレベルを持つようになりました。
* nil: 警告を出力しない (-W0 新しい警告レベル)
* false: 重要な警告のみ出力 (-W1 デフォルト)
* true: すべての警告を出力する (-W2 or -W or -v or -w or --verbose)
追加さ......y-dev:16909>))
これにより、
re1 = /hogehoge/i
re2 = /fugafuga/
re3 = / #{re1} | #{re2} /x
などと正規表現オブジェクトを正規表現に埋め込めるようになりました。
: ((<Regexp#options|Regexp/options>)) [new]
追加
=== Socket
: ((<... -
ruby 1
. 6 feature (144.0) -
ruby 1.6 feature ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン になります。
...new("foo") == Hash.new("bar")
=> ruby 1.6.7 (2002-03-01) [i586-linux]
true
=> ruby 1.6.7 (2002-08-21) [i586-linux]
false
# : 2002-08-01 IO#read, gets ..., etc.
#
# File::NONBLOCK を指定した IO の読み込みで EWOULDBLOCK が発生すると、
#......) [i586-linux]
: 2002-05-02 Regexp.quote
# はバックスラッシュクォートするようになりました。これは、quote した
正規表現を //x に正しく埋め込めるようにするためです。
((<ruby-bugs-ja:PR#231>))
p Regexp.quote("#")
p /a#{Rege......make sure
ruby 1.6.7 (2002-05-04) [i586-linux]
"\\t"
nil
: 2002-04-20: Regexp#inspect
/x フラグ付きの正規表現オブジェクトの inspect が改行を \n に変換して
いました。((<ruby-bugs-ja:PR#225>))
p /a
b/x... -
Ruby用語集 (84.0)
-
Ruby用語集 A B C D E F G I J M N O R S Y
...る。
: 1 オリジン
: one-based
番号が 1 から始まること。
例えば、
エラーメッセージにおける行番号、
正規表現検索におけるキャプチャーの番号、
Ruby 2.7 で導入された番号指定ブロックパラメーター、
といったも......:spec/safelevel
: 鬼雲
: Onigmo
Ruby 2.0 以降採用されている正規表現エンジン。鬼車のフォーク。
参照:spec/regexp
: 鬼車
: Oniguruma
Ruby 1.9.x で採用されていた正規表現エンジン。
: オーバーライド
: override
Ruby では上位クラ......ate method
返り値を真偽値として用いるためのメソッド。
メソッド名の末尾に ? を付ける習慣がある。
true/false を返すとは限らず、真である場合に、true 以外のオブジェクトを
返すことで、単なる真偽を越えた情報を与......削除された。
: 鬼雲
: Onigmo
Ruby 2.0 以降採用されている正規表現エンジン。鬼車のフォーク。
参照:spec/regexp
: 鬼車
: Oniguruma
Ruby 1.9.x で採用されていた正規表現エンジン。
: オーバーライド
: override
Ruby では上位ク... -
StringScanner
# scan _ full(regexp , s , f) -> object (78.0) -
スキャンポインタの位置から regexp と文字列のマッチを試します。
...が true ならばスキャンポインタを進めます。
* s が false ならばスキャンポインタを進めません。
* f が true ならばマッチした部分文字列を返します。
* f が false ならばマッチした部分文字列の長さを返します。
マ......* scan_full(regexp, true, false) は StringScanner#skip と同等。
* scan_full(regexp, false, true) は StringScanner#check と同等。
* scan_full(regexp, false, false) は StringScanner#match? と同等。
@param regexp マッチに用いる正規表現を指定します。
@param......s true ならばスキャンポインタを進めます。
false ならばスキャンポインタを進めません。
@param f true ならばマッチした部分文字列を返します。
false ならばマッチした部分文字列の長さを返します。
//emlist[例][... -
StringScanner
# search _ full(regexp , s , f) -> object (76.0) -
regexp で指定された正規表現とマッチするまで文字列をスキャンします。
...gexp で指定された正規表現とマッチするまで文字列をスキャンします。
マッチに成功すると、s と f の値によって以下のように動作します。
* s が true ならばスキャンポインタを進めます。
* s が false ならばスキャン......ん。
* f が true ならばスキャン開始位置からマッチした部分の末尾までの部分文字列を返します。
* f が false ならばスキャン開始位置からマッチした部分の末尾までの部分文字列の長さを返します。
マッチに失敗する......ch_full(regexp, true, false) は StringScanner#skip_until と同等。
* search_full(regexp, false, true) は StringScanner#check_until と同等。
* search_full(regexp, false, false) は StringScanner#exist? と同等。
@param regexp マッチに用いる正規表現を指定します。... -
StringScanner (72.0)
-
StringScanner は文字列スキャナクラスです。 簡単に高速なスキャナを記述できます。
...ringScanner.new('This is an example string')
s.eos? #=> false
p s.scan(/\w+/) #=> "This"
p s.scan(/\w+/) #=> nil
p s.scan(/\s+/) #=> " "
p s.scan(/\s+/) #=> nil
p s.scan(/\w+/) #=> "is"
s.eos? #=> false
p s.scan(/\s+/) #=> " "
p s.scan(/\w+/) #=> "an"
p s.scan(/......ple string s.eos? = false
s.scan(/\w+/)
# This_ is an example string s.eos? = false
s.scan(/\s+/)
# This _is an example string s.eos? = false
s.scan(/\w+/)
# This is_ an example string s.eos? = false
s.scan(/\s+/)
# This is _an example string s.eos? = false
s.scan(/\w+/)
# This i......tringScanner.new("るびい") # 文字コードはEUC-JPとします
p s.exist?(/び/) #=> 4
//}
StringScanner は $~ $& $1 $2 …… などの正規表現関連変数を
セットしません。代わりに StringScanner#[] , StringScanner#matched? などの
マッチデータ関連メソッドを... -
String
# [](regexp , nth = 0) -> String (65.0) -
正規表現 regexp の nth 番目の括弧にマッチする最初の部分文字列を返します。 nth を省略したときや 0 の場合は正規表現がマッチした部分文字列全体を返します。 正規表現が self にマッチしなかった場合や nth に対応する括弧がないときは nil を返します。
...
正規表現 regexp の nth 番目の括弧にマッチする最初の部分文字列を返します。
nth を省略したときや 0 の場合は正規表現がマッチした部分文字列全体を返します。
正規表現が self にマッチしなかった場合や nth に対応する括......情報が組み込み変数 $~ に設定されます。
@param regexp 取得したい文字列のパターンを示す正規表現
@param nth 取得したい正規表現レジスタのインデックス。整数
//emlist[例][ruby]{
p "foobar"[/bar/] # => "bar"
p $~.begin(0) # => 3...