【发布时间】:2014-02-05 09:48:35
【问题描述】:
我有一些带有标签的字符串,看起来像@user_name。 现在我以这种方式将所有主题标签转换为链接:
$text = preg_replace ("/@(\\w+)/", '<a href="http://$1.'.SITE_NAME.'">@$1</a> ', $text);
如您所见,所有主题标签都变成了子域名。如果您知道,子域名中的_ 符号存在一些问题(某些浏览器不支持,IE 支持,但未设置cookie 等)。所以我需要将子域中的_ 符号替换为-(减号),但在标签视图中保留_ 符号。将我需要的内容链接到<a href="http://user-name.site.com">@user_name</a>。怎么样?
【问题讨论】:
-
哈希标签是
#。当然你的意思是at符号 (@) -
@BeatAlex 我认为在这种情况下没关系
-
嗯,不,无论是
#还是@,它仍然可行,但你要求的是一个标签,这是我感到困惑的地方,因为没有'您的代码中没有任何内容。 -
@BeatAlex 也许你会觉得很奇怪,但在苏联俄罗斯,我们将文本中的 # 和 @ 标签都称为“hashtags”。 =)
标签: php regex preg-replace str-replace hashtag