【发布时间】:2012-01-30 09:55:08
【问题描述】:
我为一个网络论坛继承了一些相当复杂的代码,我正在尝试实现的功能之一是能够不将空格截断为一个。这主要是因为我们的用户经常希望在他们的帖子中包含 ASCII 艺术、表格等。
我首先使用 javascript 中的简单搜索和替换来执行此操作,这具有破坏 HTML 标签的副作用(例如,<a href=....> 变成了<a&nbsp;href=.....>)。
然后我尝试在服务器端执行此操作,当检索字符串时,在链接和人们插入的代码转换为 HTML 之前转换空格。这在一定程度上可行,但它会导致代码的其他部分出现一些问题,例如,一条消息被截断以显示在主页上,它可能会留下一些空格代码,例如
这是一条消息&nb
我认为可能有一种方法可以改变原始 javascript 来实现这一点 - 它只需要匹配不在 HTML 标记内的空格。
我最初使用的脚本是message = message.replace(/\s/g, "&nbsp;")。
感谢您为此提供的任何帮助。
【问题讨论】:
-
查看 stackoverflow.com/questions/5210287/… 获取 PHP 解决方案,其中包含相关的正则表达式模式。
标签: javascript html regex string