我正在使用这个正则表达式模式:@[a-zA-Z0-9-_]+匹配字符串中的@usernames.
嘿@alex,whatsup
@brian @mary很酷的照片
突出显示的文本grey是正则表达式模式返回的内容,但我希望它返回@字符后的所有内容.所以我真正想要的是:
嘿@ alex,whatsup
@ brian@ mary很酷的照片
我应该如何改变模式?
你应该用积极的回顾后,这需要断言如下:我想匹配[a-zA-Z0-9-_]+,但只有当有是("阳性")的@ 前它(因此,"回顾后发").
我并不特别了解Swift正则表达式语法,但大多数引擎都(?<=...)用于正面的后视.因此:
(?<=@)[a-zA-Z0-9-_]+
Run Code Online (Sandbox Code Playgroud)
如果您愿意,可以在Regex101上玩它.