我一直在使用以下正则表达式来解析我的应用程序中帖子中的#username。
'/(^|\s)#(\w*[a-zA-Z_]+\w*)/
有人可以向我解释一下
(^|\s)
的目的吗?如果我省略那部分怎么办?
(^|\s)
匹配字符串的开头 (^
) 或空格字符 (\s
)。这是为了防止 hallo#world
匹配为提及。
替代方法是使用
\b
(单词边界)。它的语义略有不同,但在这种情况下应该可以工作。
(^|\s)
是行或字符串的开头 (^
) 或 (|
) 空白字符 (\s
)