【发布时间】:2012-07-17 22:45:14
【问题描述】:
我需要在文件中搜索包含数字的某些行,然后对这些数字进行一些操作,然后再在文件中替换它们。例如,假设我有这样一行:
normal: { x: 50, y: 50 }
我需要找到该行,将两个数字除以 2,然后替换该行中的数字并更新文件。我编写正则表达式来查找该行没有问题,并使用preg_replace_callback() 编写了一个小PHP脚本来操作数字,但我需要能够替换数字然后只更新文件中的那一行。我很乐意使用 bash/sed/awk 或 Ruby 或 Python 或 PHP,但我不是这些方面的专家。
我应该直接读入整个文件,然后我的replace_callbacks 覆盖该文件吗?
【问题讨论】:
-
我会说一次读取整个文件,进行正则表达式替换并将整个文件写回磁盘是最快的。假设这些文件适合内存。