我正在匹配Twitter个人资料网址中的用户名部分 - 例如。 http://www.twitter.com/joebloggs
目前,我已成功使用http://www.twitter.com/(\ w +)
但是,在某些情况下,源网址的格式为http://www.twitter.com/@joebloggs
这是不必要的,但我仍然需要找到" joebloggs"全都一样。所以我需要匹配没有@或@的格式。
我尝试过使用管道或垂直条的各种方法。
感谢。
答案 0 :(得分:2)
您可以使用以下选项使@
成为可选项:
^http:\/\/www\.twitter\.com\/@?(\w+)
<强>解释强>
^ # match start of input
http: # match literal http://
\/\/ # match 2 // (escaping is needed for some regex engines)
www # match literal www
\. # match literal dot (escaping since dot is special meta char)
twitter\.com # match literal twitter.com
\/ # match literal /
@? # match optional @
(\w+) # match 1 or more word characters and group it