-2
开始比赛的话到目前为止,我有红宝石正则表达式 - 这与#
def get_hashtags(post)
words = post.scan(/\#(\w+)/)
end
其中一期工程,但它也得到像“在#线”的话,而我只希望它们与#开头的单词。
我试过使用\ b,但我似乎无法弄清楚。
任何帮助将不胜感激。
谢谢!
开始比赛的话到目前为止,我有红宝石正则表达式 - 这与#
def get_hashtags(post)
words = post.scan(/\#(\w+)/)
end
其中一期工程,但它也得到像“在#线”的话,而我只希望它们与#开头的单词。
我试过使用\ b,但我似乎无法弄清楚。
任何帮助将不胜感激。
谢谢!
我将在#
/(?<!\S)\#(\w+)/
有了您的正则表达式你正好与#说的话之前使用空白边界。在'在#行'的情况下,它会捕获#line。这里有什么问题? –
问题出在#行不以#开头,它以'i'开头,所以不应选择它。 – user2085143
所以它不会捕获'我',这正是hashtags的工作方式。 '#one#two'是2个正确的#标签。你说,它应该只捕获'#one'或被捕获为一个单一的hashtag? –