【发布时间】:2012-09-15 03:34:57
【问题描述】:
示例输入字符串:test:)test:)test:) :) test:p test
想要的输出字符串:test :) test :) test :) :) test :p test
正如您在上面的示例中所见,我想解析字符串并生成一个输出字符串,并在所有预定义的笑脸代码周围添加空格。
我试图通过几个循环来做到这一点,但最终它并没有像预期的那样 100% 工作,而且在大型文档上速度非常慢。
所以我想知道用 PHP 进行这种解析的最好和最有效的方法是什么?
【问题讨论】:
-
正则表达式。学习它们,享受它们,并发现在
preg_replace一行中很容易做到这一点 -
我之前尝试过使用 preg_replace() 执行此操作,但由于某种原因它不起作用。你能帮帮我吗?
-
@Prinzhorn 我尝试使用 '$text=preg_replace('/([^ ]):\)([^ ])/i', '$1 :) $2', $text)' 但是不起作用。知道它有什么问题吗?
-
为什么不加空格,然后用一个空格替换多个空格
标签: php parsing spaces emoticons