REGEX - 链接与主题标签冲突

时间:2015-05-28 11:00:27

标签: javascript regex negative-lookahead

我正在使用一些正则表达式来转换来自API(twitter,facebook,..)的文本中的链接,主题标签,提及等等。

效果很好但是在链接中有锚的特殊情况下,第一个模式首先转换链接,然后转换链接标记内的hastag - 例如转换:

http://www.mytaratata.com/emission/taratata-n89/video/557/edwyn-collins-a-girl-like-you-1995#newsletter

是一团糟。

我只是觉得twitter标签的正则表达式不匹配,如果它是一个链接 - (例如,如果它包含一个点)

hello#music -> match
#hello#music -> match
hello.com#music -> no match

我使用负面前瞻这样的事情,但我无法得到它:

((?!\.)#.*\w*[a-zA-Z_]+\w*)

2 个答案:

答案 0 :(得分:2)

我想你想要这样的东西,

^(?!.*?\.).*?(#.*\w*[a-zA-Z_]+\w*)

从组索引1获取hasttag。

DEMO

^.*?\..*$|(#\w*[a-zA-Z_]+\w*)

DEMO

答案 1 :(得分:1)

我建议使用此正则表达式保持简单:

QTextBrowser

RegEx Demo