改进主题标签的正则表达式以生成 link
Improving a regex for the hashtag to generate a link
我正在使用这个正则表达式
(^|\s)(#\w+)
To take this -> #test
#test <- to take this
to take this #test another word
to take this #Mest another word
To don't take this -> l'#09
to don't take this -> » or '
但是我在替换过程中遇到了问题。
我用这个
<a href="/hash/" class='hash_tag'></a>
但是通过这种方式我在 href 中也有#。
例如
Take this <a href="/hash/#test" class='hash_tag'>test</a>
虽然,我必须得到这个
Take this <a href="/hash/test" class='hash_tag'>#test</a>
有什么建议吗?
我需要第三组吗?怎么办?
我可以改进吗?
您需要修改正则表达式和替换:
正则表达式: (^|\s)#(\w+)
替换:<a href="/hash/" class='hash_tag'>#</a>
参见regex demo。
因此,#
被排除在捕获组 #2 之外,您只需在替换模式中需要的地方添加它。
添加第三组很容易:
(^|\s)(#(\w+))
|__1_|| | ||
| |_3_||
|____2_|
替换为
<a href="/hash/" class='hash_tag'></a>
参见proof。
我正在使用这个正则表达式
(^|\s)(#\w+)
To take this -> #test #test <- to take this to take this #test another word to take this #Mest another word To don't take this -> l'#09 to don't take this -> » or '
但是我在替换过程中遇到了问题。
我用这个
<a href="/hash/" class='hash_tag'></a>
但是通过这种方式我在 href 中也有#。
例如
Take this <a href="/hash/#test" class='hash_tag'>test</a>
虽然,我必须得到这个
Take this <a href="/hash/test" class='hash_tag'>#test</a>
有什么建议吗?
我需要第三组吗?怎么办?
我可以改进吗?
您需要修改正则表达式和替换:
正则表达式: (^|\s)#(\w+)
替换:<a href="/hash/" class='hash_tag'>#</a>
参见regex demo。
因此,#
被排除在捕获组 #2 之外,您只需在替换模式中需要的地方添加它。
添加第三组很容易:
(^|\s)(#(\w+))
|__1_|| | ||
| |_3_||
|____2_|
替换为
<a href="/hash/" class='hash_tag'></a>
参见proof。