Upgrade to Pro — share decks privately, control downloads, hide ads and more …

正規表現の \z の話

正規表現の \z の話

あるちょっと遅そうな正規表現を高速化した話

D0260637093bc53a82195678fd2ba4c3?s=128

Kazuhiro NISHIYAMA

June 13, 2015
Tweet

More Decks by Kazuhiro NISHIYAMA

Other Decks in Programming

Transcript

  1. 正規表現の� � \z� の話 あるちょっと遅そうな正規表現を� � ⾼速化した話 Kazuhiro� NISHIYAMA 第67回�

    Ruby関⻄� 勉強会 2015/06/13
  2. 自⼰紹介 twitter� や� github� では� @znz

  3. Ruby� 関連 Ruby� (CRuby)� のコミッター Ruby� 関係でいろいろ るびま� (Rubyist� Magazine)�

    とか http://magazine.rubyist.net/ るりま� (Ruby� リファレンスマニュア ル)� とか http://docs.ruby-lang.org/ja/ Ruby� 関連のイベントでの発表
  4. とある正規表現 �������� 遅そう ⽂字列末尾以外にもマッチする

  5. ⽂字クラスを使う ������� 速くなった(ベンチマークは後で)

  6. \z� を使う �������� �:� ⾏末にマッチ ��:� ⽂字列末尾のみにマッチ もっと速くなった

  7. ベンチマーク ������������������� ��������������� ������������������� ��������������������� �������� ��������������������� ������������������������������������������������������ ������������������������������������������������������ ������������������������������������������������������

    ������������������������������������������������������ ���
  8. ベンチマーク結果� (1) ������������������������������������������������������� ������������������������������������������������������� ������������������������������������������������������� ������������������������������������������������������� ������������������������������������������������������� ������������������������������������������������������� ������������������������������������������������������ �������������������������������������������������������

    ������������������������������������������������������� ������������������������������������������������������� �������������������������������������������������������
  9. ベンチマーク結果� (2) ������������������������������������������������������� ������������������������������������������������������� ������������������������������������������������������� ������������������������������������������������������� ������������������������������������������������������� ������������������������������������������������������� ������������������������������������������������������ �������������������������������������������������������

    ������������������������������������������������������� ������������������������������������������������������� �������������������������������������������������������
  10. まとめ 1⽂字の場合は選択� (ん|ン)� では なく⽂字クラス� [んン]� を使おう ⽂字列末尾は� $� ではなく�

    \z