我正在使用Google翻译API。我发送html字符串。翻译工作正常,但标签搞砸了。
例如:
<b>Hello World</b>
变为
<b>Hello World</ b>
有时会返回标签,如:
<b>Hello World< / b >
我在PHP上的努力(不起作用)
preg_replace('~<(\s*)/(.*)(\s*)>~is', '</$2>', $string);
答案 0 :(得分:1)
您可以使用:
$string = preg_replace(',<\s*/\s*(\w+)\s*>,s', '</$1>', $string);
答案 1 :(得分:1)
请注意,正则表达式将解决这个问题。但只能防止标签中的空格。不会保护您免受进一步的HTML问题的影响。
这只会到目前为止,但您可以尝试像Simple HTML DOM这样的HTML解析器,它可以处理无效的HTML。然后你可以从库中清除HTML。
答案 2 :(得分:0)