sql查询将新行字符转换为html <br>

mjr*_*mjr 7 html mysql expressionengine

我有一个文章的mysql数据库,这些文章被输入到没有格式化的textarea中,它们只使用换行符来换行符

\n
Run Code Online (Sandbox Code Playgroud)

我需要将所有这些转换为html br标签

<br />
Run Code Online (Sandbox Code Playgroud)

你可以帮我写一个查询,我可以在phpmyadmin中运行,这样做吗?

表的名称是

exp_channel_data
Run Code Online (Sandbox Code Playgroud)

作为奖金问题......

是否有我可以运行的查询将从p和span标签的中间删除所有内容

我想摆脱这些东西

<p class="MsoNormal" style="MARGIN: 0in 0in 0pt">
<span face="Times New Roman">
Run Code Online (Sandbox Code Playgroud)

并最终得到这个

<p>
<span>
Run Code Online (Sandbox Code Playgroud)

Cra*_*ack 20

第一个问题:

UPDATE exp_channel_data SET text_column = REPLACE(text_column, '\r\n', '<br />')
Run Code Online (Sandbox Code Playgroud)

如果它没有替换任何东西,请使用'\n'而不是'\r\n'.

第二个问题:

您无法使用SQL查询执行此操作,您必须将此数据提取到PHP脚本或其他任何您喜欢的地方,并执行正则表达式替换(例如PHP):

$new_str = preg_replace('#<(p|span)[^>]+>#', '<$1>', $old_string);
Run Code Online (Sandbox Code Playgroud)


Jac*_*cob 6

UPDATE yourTable SET text=REPLACE(text,"\n","<br />")
Run Code Online (Sandbox Code Playgroud)

这适用于您的第一个问题.