我需要用另一个单词替换一个单词.但
$var= str_replace($linklabel[$k], $linklabelmod[$k], $var);
Run Code Online (Sandbox Code Playgroud)
没有给出理想的结果.例如,我有一个字符串
$var="the theory of them thesis";
$linklabel[1]="the";
$linklabelmod[1]="hhh";
Run Code Online (Sandbox Code Playgroud)
我需要的是,我只想替换"the"这个词.但由于"the"在"理论","论文"和"他们"中重复出现,所有开始三个字母的人也都会被取代.然后输出变成 $ var ="hhh hhhh hhhh hhhsis"; //错误 但我需要输出 $ var ="hhh理论论文"; //写 我不好解释一个问题,请原谅我...
提前致谢....
从我(paxdiablo)可以从OP的评论中收集到的内容,这是修改后的代码(仍声称不起作用):
foreach($xpath->query('//a') as $element) {
$linklabel[] = $element->textContent;
$link[] = $element->getAttribute("href");
$i=$i+1;
}
for($k=0;$k<$i;$k++) {
$linklabelmod[$k] = str_replace($linklabel[$k], $linklabel[$k]."[$k]", $linklabel[$k]);
$var = preg_replace ('/\b'.preg_quote($linklabel[$k]).'\b/', $linklabelmod[$k], $var);
}
print $var; //printing web page
Run Code Online (Sandbox Code Playgroud) 比方说,我有一个像$ x ="History [424] <"的字符串; 如何删除最后一个"<"并使字符串$ x ="History [424]"; ...我试过str_replace但不知道,它没有工作...... :(.提前做好
for($k=0;$k<$i;$k++) {
$linklabelmod[$k] = str_replace($linklabel[$k], $linklabel[$k]."[$k]", $linklabel[$k]);
//$var= str_replace($linklabel[$k], $linklabelmod[$k], $var);
print $linklabelmod[$k].'< ';
//print $linklabel[$k].' ';
print $link[$k].'<br>';
}
Run Code Online (Sandbox Code Playgroud)