我有一个带有文本区域的表格。用户输入存储在数据库中的文本块。
有时,用户会从Word中粘贴包含智能引号或引号的文本。这些字符在数据库中显示为:“,”,“,”。
我应该在输入字符串上调用什么函数以 将智能引号转换为正则引号,并将破折号转换为正破折号 ?
我正在使用PHP。
更新:感谢您到目前为止的所有好评。Joel网站上有关编码的页面内容非常丰富:http://www.joelonsoftware.com/articles/Unicode.html
有关我的环境的一些注意事项:
MySQL数据库使用UTF-8编码。同样,显示内容的HTML页面通过显式设置元内容类型使用了UTF-8(更新:)。
在这些页面上,智能引号和破折号显示为带有问号的菱形。
解:
再次感谢您的答复。解决方案是双重的:
htmlspecialchars()
代替 htmlentities()
。这听起来像是Unicode问题。Joel
Spolsky在该主题上有一个很好的起点:http
:
//www.joelonsoftware.com/articles/Unicode.html
问题内容: 如何在shell中重复n次字符?我已经阅读并尝试过此操作,但这不适用于。它引发错误。以下是我使用的确切命令: 原始发布行: 我还尝试通过转义来转义,但在这种情况下,它会重复n次。 问题答案: 这将引发错误: 在以下情况下可以正常工作: 对于其他外壳,请尝试: 问题是期望启动一个选项。在这种情况下,在Unix / POSIX实用程序中很常见,这表明不要有更多选择。
我必须拆分一个包含破折号和减号的字符串。我试图根据unicode字符进行拆分(https://en.wikipedia.org/wiki/Hyphen#Unicode),仍然考虑减号与破折号字符相同。我如何解决它? 预期产出 (国家) (美国) -1个 实际输出量 (国家) (美国) //实际上,这里会打印空行,但编辑器会压缩空行 1. 我想在字符串连接期间会发生一些转换,但不确定。欢迎任何解决这
我可以将替换为其他一些字符序列(例如)来执行字符串替换,但是如果我可以用正则表达式来替换,这将更加清楚。
问题内容: 我想像这样在Bash中显示一个字符串 当然可以这样 但是如何在字符串周围使用单引号的同时完成此操作? 问题答案: 不起作用。但是以下工作原理: 在bash的手册页中: 即使在单引号之前加反斜杠,也不能在单引号之间引起单引号。 .... $’string’* 形式的单词经过特殊处理。该单词扩展为字符串,并按ANSI C标准的规定替换反斜杠转义字符。 *
问题内容: 如何获得以下两个文本中引号之间的含义? 我的问题是,如果引号被转义,则应将其忽略,但是有可能使反斜杠转义。 我想获得以下团体。 问题答案: 匹配带引号的字符串,包括其中出现的所有转义字符。 说明:
问题内容: 我知道如何遍历字符串中的所有字符,但是我正在寻找一种更优雅的方法。 问题答案: 正则表达式只需很少的代码即可解决问题: