Advertisement

java pattern 性能差

阅读量:

我的目标是处理包含300k条记录的大型CSV文件,并将regexp模式应用于每条记录。我一直以来都专注于PHP开发,从未真正尝试过其他编程语言,但这次我决定尝试使用Java,因为我相信这可能会提升性能。实际上,仅逐行读取CSV文件这一操作在Java中就比PHP快了三倍。然而,在应用regexp匹配时,Java实现的执行时间却比PHP脚本多出10%到20%。我可能在Java代码中存在错误,毕竟我才刚开始学习这个语言,就像今天才刚刚接触一样。以下是两个脚本代码,如果有人能提供一些指导将不胜感激。我真的不希望在这个特定项目上放弃使用Java。

PHP代码

$bgtime = time();

$patterns = array(

"/SOME REGEXP/",

"/SOME REGEXP/",

"/SOME REGEXP/",

"/SOME REGEXP/"

);

$fh = fopen('largeCSV.txt', 'r');

while (currentLineString = fgetcsv(fh, 10000, ",")) {

复制代码
foreach ($patterns AS $pattern) {

    preg_match_all($pattern, $currentLineString[6], $matches);

}

全部评论 (0)

还没有任何评论哟~