PHP:替换所有实例

标签 php regex replace preg-replace

我有一个看起来像这样的聊天记录文件(名称代表屏幕名称,文本是他们的聊天字符串)

name: some text
name2: more text
name: text
name3: text

我想为 : 之前的所有名称着色红色的。例如:<font color=red>myname:</fontcolor> hello我该怎么做?

我不知道为什么,但是这段代码在冒号之后给所有东西上色
echo preg_replace('/(.*?):/', "<font color=#F00>$1</font>:", $output);

最佳答案

之前已经提供了对这个问题的正确答案:

看第二个回答:

PHP: insert text up to delimiter

另外,你的实现是错误的,看看它应该以 ^ 开头的正则表达式:

echo preg_replace('/(.*?):/', "<font color=#F00>$1</font>:", $output);

应该:
echo preg_replace('/^(.*?):/', "<font color=#F00>$1</font>:", $output);

关于PHP:替换所有实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7297052/

相关文章:

php - 移动检测高流量站点

php - 多个 mysqli_queries 是否使用相同的连接?

php - gzopen() 之后的 gzXXX() 与 fXXX() 函数

sql - MySQL:使用 REPLACE 作为 IN 语句的一部分

MySQL查询用下划线替换列中的空格

php - Apache 不会在轮询时提供服务

vb.net - 使用正则表达式 VB.Net 验证电子邮件

正则表达式排除前缀字符串?

Java正则表达式模式在输入字符串中查找3个字母回文

javascript - 如何替换 JQuery 属性中的子字符串