diff --git a/src/Discord.Net/DiscordClient.Messages.cs b/src/Discord.Net/DiscordClient.Messages.cs index 0d4ce4b52..670164f4f 100644 --- a/src/Discord.Net/DiscordClient.Messages.cs +++ b/src/Discord.Net/DiscordClient.Messages.cs @@ -119,7 +119,7 @@ namespace Discord private async Task SendMessage(Channel channel, string text, bool isTextToSpeech) { Message msg; - var userIds = !channel.IsPrivate ? Mention.GetUserIds(text) : new string[0]; + var userIds = !channel.IsPrivate ? Mention.GetUserIds(text).Distinct() : new string[0]; if (Config.UseMessageQueue) { var nonce = GenerateNonce(); diff --git a/src/Discord.Net/Helpers/Mention.cs b/src/Discord.Net/Helpers/Mention.cs index 6df38ffbe..3c91a917c 100644 --- a/src/Discord.Net/Helpers/Mention.cs +++ b/src/Discord.Net/Helpers/Mention.cs @@ -6,8 +6,8 @@ namespace Discord { public static class Mention { - private static readonly Regex _userRegex = new Regex(@"<@(?:[0-9]+?)>", RegexOptions.Compiled); - private static readonly Regex _channelRegex = new Regex(@"<#(?:[0-9]+?)>", RegexOptions.Compiled); + private static readonly Regex _userRegex = new Regex(@"<@([0-9]+?)>", RegexOptions.Compiled); + private static readonly Regex _channelRegex = new Regex(@"<#([0-9]+?)>", RegexOptions.Compiled); /// Returns the string used to create a user mention. public static string User(User user)