我必须将下面的字符串解析为三个组:Command、Target、Args. 目标和参数都是独立可选的.
/ping@mybot arg1 arg2
个
在regexr.com的宝贵帮助下,我已经创建了一个正则表达式,并且我在这里获得了正确的匹配.
/(?<Command>[\w]*)+(?:@(?<Target>[\S]*)+)?(?<Args>[\s\S]*)?
个
然而,当我try 将它插入C#时,我没有得到任何匹配,我会在这里搞砸什么呢?我@"转义字符串以避免转义问题:
var match = Regex.Match(cmd, @"/(?<Command>[\w]*)+(?:@(?<Target>[\S]*)+)?(?<Args>[\s\S]*)?");
个
C#的正则表达式是否需要一组不同的字符?