Rubyと正規表現

Rubyのソースをくんでいると、正規表現がうまく書けるか書けないかで、大きな効率の差がでてくるような感じがする。正規表現は確かに強力なのだが、慣れないとさっぱりわけがわからない。どう使っていいのか戸惑ってしまうことがよくある。
たとえば非常に初歩的なことだが、正規表現というのは左から適用される。正規表現は有限オートマトンが受理できる範囲と一致する(と,去年習った).有限オートマトンの計算モデルを考慮に入れれば,左から解釈していくという考えはよく考えればあたりまえなのだが、言われるまでは気づかなかった。
また、ORなど,一部の正規表現は使い方を誤るとものすごく処理が重くなり、プログラム全体の効率に大きな影響をおよぼすため,より早い形に書き直すことができる(これも習ったような気がするが,覚えてない)。Rubyの場合はバックトラック法というのを使用しているらしいのだが、それを考えてプログラムを書かなくてはいけないらしい。しかし、簡単な解説ではよくわからない。やはりオライリーの例の本を読むべきなのかもしれない。