我想替换它:
~ <a href="xxxx">Download</a>
使用:
<div class="down"> ~ <a href="xxxx">Download</a> </div>
大约有300-350个地方DOWNLOAD
字重复出现。 xxx
不是常数,每次都会改变,超链接每次都会改变......
是否可以使用任何SQL查询执行此操作?如果它在SQL中不可能,可以在php中完成吗?
答案 0 :(得分:1)
怎么样:
UPDATE MyTable
SET MyField = REPLACE(MyField,
'~ <a href="xxxx">Download</a>',
'<div class="down"> ~ <a href="xxxx">Download</a> </div>')
好的,如何更换"xxxx"
周围的所有内容:
UPDATE MyTable
SET MyField =
REPLACE(
REPLACE(MyField,
'~ <a href=',
'<div class="down"> ~ <a href'),
'</a>',
'</a> </div>')
答案 1 :(得分:1)
<?php
$string = '~ <a href="xxxx">Download</a>';
$string = str_replace('~ <a href="xxxx">Download</a>', '<div class="down"> ~ <a href="xxxx">Download</a> </div>', $string);
echo $string;
Echo在HTML源代码中的以下内容为:
<div class="down"> ~ <a href="xxxx">Download</a> </div>
此外:
$link = "page.php";
$string = '~ <a href="xxxx">Download</a>';
$string = str_replace('~ <a href="xxxx">Download</a>', '<div class="down"> ~ <a href="'.$link.'">Download</a></div>', $string);
echo $string;
HTML来源:
<div class="down"> ~ <a href="page.php">Download</a></div>
答案 2 :(得分:0)
从表中获取行并使用以下内容。
foreach($result as $row)
{
echo '<div class-="down"><a href = "'. $row['xxxx'] .'" >Download</a></div>';
}
答案 3 :(得分:0)
MySQL有一个REGEXP运算符,但它仅适用于“匹配”,而不适用于替换。
这样的表达式:
REPLACE(
REPLACE(col,
, '~ <a href="'
, '<div class="down"> ~ <a href="'
)
, '">Download</a>'
, ">Download</a> </div>'
)
可能会达到之后的结果,但两个替换将独立完成。也就是说,字符串中 '~ <a href="'
的所有实例,而不仅仅是那些后跟 Download
的实例。
我强烈怀疑这对你不起作用,因为我怀疑你需要执行此操作的列包含这些相同字符串的其他实例,这些实例不需要替换。