我使用的数据库中的一列包含 RTF 字符串,我想使用 PHP 删除这些字符串,只留下中间的句子。
如果我没记错的话,它是 MS SQL 数据库 2005。
从数据库中提取字符串的示例(需要更多信息请告诉我,其余的都是类似的):
{\rtf1\ansi\ansicpg1252\deff0\deflang2057{\fonttbl{\f0\fnil\fcharset0 Tahoma;}}
\viewkind4\uc1\pard\lang1033\f0\fs17 ASSEMBLE COMPONENTS AS DETAILED ON DRAWING.\lang2057\fs17\par
}
我希望将其删除以仅返回:
ASSEMBLE COMPONENTS AS DETAILED ON DRAWING.
现在,我已经成功地在之前的项目中删除了 ASP.NET 中的字符,但我想使用 PHP 来实现这一点。这是我在 ASP.NET 中使用的正则表达式,它运行得很好,我可以补充一下:
"(\{.*\})|}|(\\\S+)"
但是,当我尝试在 PHP 中使用与 preg_replace 相同的表达式时,它不会删除一半的字符。
有正则表达式专家吗?
使用此代码。它会工作得很好。
$string = preg_replace("/(\{.*\})|}|(\\\S+)/", "", $string);
请注意,我在正则表达式的开头和结尾添加了“/”。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)