Php 在字符串中搜索一个单词,并用不同的链接替换该单词
使用PHP,如何用不同的链接替换字符串中的单词 我想按顺序用不同的链接替换word web development 这家网络开发公司很棒。一个好的web开发开始了 与 像这样 这家公司很棒。良好的开端 与 我试过使用Php 在字符串中搜索一个单词,并用不同的链接替换该单词,php,Php,使用PHP,如何用不同的链接替换字符串中的单词 我想按顺序用不同的链接替换word web development 这家网络开发公司很棒。一个好的web开发开始了 与 像这样 这家公司很棒。良好的开端 与 我试过使用str\u ireplace,但两个链接都指向同一个站点 这是我的密码 <?php $text = 'This web development company is great. A good web development starts with...'; $repla
str\u ireplace
,但两个链接都指向同一个站点
这是我的密码
<?php
$text = 'This web development company is great. A good web development starts with...';
$replaced = str_ireplace(array('web development', 'web development'),array('<a href="http://google.com">web development</a>', '<a href="http://yahoo.com">web development</a>'), $text);
echo $replaced;
如中所示,您可以执行类似操作(使用preg\u replace):
它将显示:“谷歌和雅虎”
(我希望我了解您的需要)尝试使用regex,如:
<?php
$text = 'This web development company is great. A good web development starts with...';
$regex = "/[^>]web development[^<]/i";
$replace = array(' <a href="http://google.com">web development</a> ',
' <a href="http://yahoo.com">web development</a> ');
$count = 1;
$replaced = preg_replace(array($regex,$regex), $replace, $text, $count);
echo $replaced;
我想你可以用preg\u replace
来做
搜索与模式匹配的主题,并将其替换为
替换
您可以对要替换的单词的时间设置限制
限制:每个主题中每个模式的最大可能替换
一串默认值为-1(无限制)
因此,我认为你可以做一个功能,首先,计算“Web开发”中出现的文本,然后执行:
$text = preg_replace("web development", "<a href='http://www.exemple.com'>web development</a>", $text, 1);
请参阅PHP手册中的。我认为您可以使用preg\u replace()
函数,如下所示:
$pattern = '/(web development)(.*)(web development)/';
$replace = '<a href="http://google.com">web development</a>$2<a href="http://yahoo.com">web development</a>';
$result = preg_replace($pattern, $replace, $text);
echo $result;
$pattern='/(web开发)(.*)(web开发)/;
$replace='$2';
$result=preg_replace($pattern,$replace,$text);
回声$结果;
希望有帮助 php应该如何知道用哪个链接替换“web开发”?按顺序?您希望用于替换的链接是否总是以相同的顺序出现?您是否可以控制原始内容(即将web开发更改为更可用的占位符)?数组中的第一个替换链接应替换第一个单词。可能的重复项
preg_replace ( mixed $pattern , mixed $replacement , mixed $subject [, int $limit = -1 [, int &$count ]] )
$pattern = '/(web development)(.*)(web development)/';
$replace = '<a href="http://google.com">web development</a>$2<a href="http://yahoo.com">web development</a>';
$result = preg_replace($pattern, $replace, $text);
echo $result;