javascript - 过滤txt文件中的行并将其设为http href链接

标签 javascript php jquery html

这次我想做的是获取 () 之间的数字,将它们过滤掉,以便我可以将它们放入锚定的 http href 链接中。

文本文件示例:

09:02:10 - Admin SO_Conner (1374991) teleported to player Footman_Skull_of_Reyne (1050854). 
09:02:15 - Admin SO_Conner (1374991) teleported to player Levy_Eddin_of_Reyne (1166164). 
09:02:22 - Admin SO_Conner (1374991) faded out player Levy_Eddin_of_Reyne (1166164). 
09:02:27 - Admin SO_Conner (1374991) teleported to player Valyrian_Militia_Crazymortal (1575057).

链接看起来像这样:

09:02:27 - Admin SO_Conner  (<a href="?get_engine&loopup=1374991">1374991</a>) teleported to player Valyrian_Militia_Crazymortal (<a href="?get_engine&loopup=1575057">1575057</a>)

我已经尝试过这样做:

<?php

    if(strpos($line,'1374991') === false)

?>

但我似乎找不到让它发挥作用的方法。

最佳答案

使用preg_replace :

$file = file(/* path to file */);
foreach($file as &$line) {
    $line = preg_replace('/(\d\d:\d\d:\d\d - [a-zA-Z _]+\()(\d+)(\)[a-zA-Z _]+\()(\d+)(\).*)/', '$1<a href="?get_engine&loopup=$2">$2</a>$3<a href="?get_engine&loopup=$4">$4</a>$5', $line);
}

尽管正则表达式模式可能更简单,但这应该可行。如果您确定 txt 文件的每一行的结构始终相同,则可以使用以下模式:

$line = preg_replace('/\((\d+)\)/', '<a href="?get_engine&loopup=$1">$1</a>', $line);

关于javascript - 过滤txt文件中的行并将其设为http href链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31939730/

相关文章:

Javascript - 一个函数依赖于其他函数首先运行

javascript - 如何在react-native(web/android/ios)中的图像上创建链接?

php - 重命名不支持多字节字符

php - Zend 框架查询 where 子句

php - 使用PDO从php页面将具有更多列的表单数据插入mysql数据库

javascript - 如何比较JQuery中新对象的值?

javascript - 无法读取 Sequelize Node js 中未定义的属性 'create'”错误

javascript - 不需要的 MobileSafari 'Open this page in "App Store”?对话

javascript - 这种模式有什么好处: loos augmentation

javascript - 哪个建议最适合根据用户视口(viewport)调整布局?