如何使用 php 排除 MS Word 在 regEx 中创建的垃圾字符

发布于 2025-01-01 05:17:26 字数 217 浏览 0 评论 0原文

我使用 $text = fread($filename, $filesize); 阅读 MS Word 文档

然后,当我回显 $text 时,它有一些浏览器无法正确显示的字符并输出一些损坏的字符。我试图用以下正则表达式清除它们:

preg_replace('/[^\w]/','',$text); 但它没有按我想要的方式工作。

有人可以帮忙吗?

I read the MS Word document with $text = fread($filename, $filesize);

then when I echo the $text it has some chars that browser cannot display properly and outputs some broken chars. I'm trying to clear them out with following regex:

preg_replace('/[^\w]/','',$text); but it's not working as I want.

Can anybody help, please?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

嗫嚅 2025-01-08 05:17:26

正如评论中已经提到的,您应该使用一个工具将 .doc 文件转换为更可用的文件,例如纯文本/文本。

否则,您可以在输出每一行时尝试以下正则表达式,它只保留字符串中的数字、单词和空格字符:

preg_replace("/^([^\d\w\s])$/i", "", $text);

As already mentioned in the comments, you should use a tool that transforms the .doc-file into something more usable like plain/text.

Otherwise you could try the following regexp when outputting each line, which only keeps digit-, word- and whitespace-charaters in the string:

preg_replace("/^([^\d\w\s])$/i", "", $text);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文