Ruby1.9.3で正規表現を学んでいます。
理由を教えてください
/\b[^\b]*\b/.match(" hello world ") matched => #<MatchData "hello world">
動作しませ[^\b]
んか?一言で言ってはいけませんよね?
必要なのは/\b\w*\b/
(\w
=英数字)です。は実際の文字を表すの\b
ではなく、文字に単語の境界条件を追加します。
[…]
文字セットを示します。フラグであり、文字ではないため\b
、文字セットに入れることはできません。
ところで、単語を一致させるために、実際には何も必要ありません\b
。単純な/\w+/
もので十分です。
の適切な使用に関する優れたチュートリアルについては、これを参照してください\b
。