社区
基础编程
帖子详情
关于关键词变红问题!
fengzheng12345
2006-11-01 11:48:27
$a = array($tok[0], $tok[1], $tok[2]);
$b = array("<font color=red>$tok[0]</font>", "<font color=red>$tok[1]</font>", "<font color=red>$tok[2]</font>");
$body=str_replace($a, $b,$body);
问题如下:
我想让每个关键词只变红一次,不要上面我写的,只要是符合的关键词就全都变红。
我应该怎么办?
...全文
590
27
打赏
收藏
关于关键词变红问题!
$a = array($tok[0], $tok[1], $tok[2]); $b = array("$tok[0]", "$tok[1]", "$tok[2]"); $body=str_replace($a, $b,$body); 问题如下: 我想让每个关键词只变红一次,不要上面我写的,只要是符合的关键词就全都变红。 我应该怎么办?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
27 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
fengzheng12345
2006-11-09
打赏
举报
回复
谢谢唠叨。给分!
aceblues
2006-11-03
打赏
举报
回复
还是唠叨好,为人民服务
xuzuning
2006-11-02
打赏
举报
回复
$key = array(0=>"的", 1=>"问题", 2=>"我");
关键字数组
array_walk($key, create_function('&$t', '$t = "/$t/";'));
array_walk 对数组中的每个成员应用用户函数
因为preg_* 函数都需要 /..../ 形式的规则串,而给出的关键字数组中不是
所以要加上
其中create_function('&$t', '$t = "/$t/";')动态创建一个函数,供array_walk使用
你也可以写成静态的,
function foo(&$t) {
$t = "/$t/";
}
array_walk($key, 'foo'));
见array_walk函数说明
$html = preg_replace($key, '<font color=red>$0</font>', $html, 1);
mixed preg_replace ( mixed pattern, mixed replacement, mixed subject [, int limit] )
在 subject 中搜索 pattern 模式的匹配项并替换为 replacement。如果指定了 limit,则仅替换 limit 个匹配,如果省略 limit 或者其值为 -1,则所有的匹配项都会被替换。
php函数的原型声明中,类型mixed表示可以是多种类型的数据,当然也就可以是数组
deninghe
2006-11-02
打赏
举报
回复
mark
gu1dai
2006-11-02
打赏
举报
回复
大家谁解释一下?
-----------
这么懒 , 打pp
fengzheng12345
2006-11-01
打赏
举报
回复
谢谢zysoft17(瓷匠),但输出出来的不对阿..
输出一些?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>?font color='#ff0000'>146?font color='#ff0000'>?font 。。。
zysoft17
2006-11-01
打赏
举报
回复
试试这段代码:
$aa = array(0=>"A", 1=>"B", 2=>"C");
$html = 网页文件内容;
foreach($aa as $line){
$html = preg_replace("/($line)/","<font color='#ff0000'>\\1</font>",$html);
}
echo $html;
fengzheng12345
2006-11-01
打赏
举报
回复
大家谁知道?谢谢了
wildlily980
2006-11-01
打赏
举报
回复
手册,正则部分。
fengzheng12345
2006-11-01
打赏
举报
回复
大家谁解释一下?
fengzheng12345
2006-11-01
打赏
举报
回复
我是很弱。呵呵
easyroom
2006-11-01
打赏
举报
回复
真弱,
fengzheng12345
2006-11-01
打赏
举报
回复
谢谢。。问题解决了,就是没看明白写的是什么意思?呵呵!还要好好研究一下。。。
xuzuning
2006-11-01
打赏
举报
回复
这样写!
你们都没有注意到:
1、preg_replace 有替换次数的指定吗
2、preg_replace 可以接受数组做参数吗
<?php
$html = "个人信息设置: 修改个人基本信息、 新设密码、<br>
新设问题答案、 修改email、 注册条款 <br>
社区: 社区、 我的问题、 我得分的问题、 我参与的问题、<br>
我的信誉分、 我的短消息、 设置自定义社区<br>
文档中心: 最新文档、 发表文章 <br>
求职: 维护我的简历<br>
系统功能: 帮助 ";
$key = array(0=>"的", 1=>"问题", 2=>"我");
array_walk($key, create_function('&$t', '$t = "/$t/";'));
$html = preg_replace($key, '<font color=red>$0</font>', $html, 1);
echo $html;
?>
yunfeifan
2006-11-01
打赏
举报
回复
$html = preg_replace("/($line)(.+)/s","<font color='#ff0000'>\\1</font>\\2",$html);
fengzheng12345
2006-11-01
打赏
举报
回复
zysoft17。。
$key = array(0=>"的", 1=>"问题", 2=>"我");你看一下结果!
关键词“我”出现了三次,关键词“的”出现了三次,关键词“问题”出现了两次。
我想只让他们一个之出现一次。呵呵!还得麻烦你看看
fengzheng12345
2006-11-01
打赏
举报
回复
太感谢了,我先试一下!
zysoft17
2006-11-01
打赏
举报
回复
估计这段代码的性能应该也不差吧.
zysoft17
2006-11-01
打赏
举报
回复
好不容易, 成功的代码如下:
<?php
$html = "个人信息设置: 修改个人基本信息、 新设密码、<br>
新设问题答案、 修改email、 注册条款 <br>
社区: 社区、 我的问题、 我得分的问题、 我参与的问题、<br>
我的信誉分、 我的短消息、 设置自定义社区<br>
文档中心: 最新文档、 发表文章 <br>
求职: 维护我的简历<br>
系统功能: 帮助 ";
$key = array(0=>"email", 1=>"修改个人", 2=>"文");
foreach($key as $line){
$html = preg_replace("/($line)(.+)/","<font color='#ff0000'>\\1</font>\\2",$html);
}
echo $html;
?>
fengzheng12345
2006-11-01
打赏
举报
回复
zysoft17(瓷匠),可以告诉我应该怎么算吗?我没是没办法,必须得这样做。
加载更多回复(7)
零基础Python人工智能自然语言处理文本挖掘
关键词
提取
零基础Python人工智能自然语言处理文本挖掘
关键词
提取:零基础入门学习自然语言处理,自然语言处理基本流程,文本挖掘基本处理流程,anaconda对Python项目多包多环境多版本管理,
关键词
提取算法TF-IDF/TextRank算法...
关键词
变红
--正则表达式
让标题和内容中的
关键词
都
变红
,一样,复制粘贴即可。 $(function(){ var titleStr=$('#title${request.totalSize}').html(); var str = $('#content${request.totalSize}').html(); //取出id=content__的...
vue3+ts-实现搜索
关键词
变红
vue3+ts-实现搜索
关键词
变红
使用php实现搜索
关键词
加粗高亮
变红
代码
使用php实现搜索
关键词
加粗高亮
变红
代码html代码php处理效果图,多个
关键词
加粗标红
JQuery实现搜索
关键词
变红
,包含
关键词
的div显示,无div的隐藏
var arr2 = ""; var arr1 = ""; var x = ""; $(function() { $("#keywords").bind("input propertychange", function() { arr2 = $(this).val(); $("font").each(function() { ...
基础编程
21,887
社区成员
140,363
社区内容
发帖
与我相关
我的任务
基础编程
从PHP安装配置,PHP入门,PHP基础到PHP应用
复制链接
扫一扫
分享
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章