文字列比較を比較してみる

ずっと気になっていた事。。
プロファイリングというほど真面目にやってませんが、strcmp、preg_match、==演算子どれが実行速度が速いか試してみました。

材料として、文字列$str1、$str2を10000回ループ処理

$str1 = “abcd”;
$str2 = “abcd”;
$n = 10000;

結果は以下の通り(要所有Mac)

strcmp Total: 0.006756067276sec
preg_match Total: 6.37917709351sec
「 == 」 Total: 0.00159978866577sec

何度か試しましたが、 ==演算子、strcmp、大きくはなれて preg_match。
予想通りと言えば予想通りですよね。。

投稿日:
カテゴリー: web タグ:

作成者: ecogrammer

塩屋でDXやってます 新三郎商店/教授←メルカリ/CS Technical Program Manager←SDA/Shareoffice Manager, Web Director←GMOペパボ/Lolipop Engineer,minne(ミンネ)Startup Engineer

2件のコメント

  1. unixでは、awkとgrepで速度比較した事がありましたが、
    そのときはawkが3倍速い結果となった記憶があります。
    今度1行perlも加えて比較してみたいところです。

  2. > atani
    awk の存在を知らなかったもぐりです。スイマセン。
    grep は正規表現という超便利機能を備えているので、ある程度の速度は犠牲になりますよね。(っても十分早いんですが・・・)

    grep って global regular expression print の略なんですね知らなかったもぐりです。スイマセン。

コメントする