private void FindDecklist(RedditSharp.Things.Comment comment, ref string message, ref int numMatches) { _syntaxRegex = @"\d{1,2}\s[A-Z].*[a-z]\s"; string tempMessage = ""; int tempNumMatches = 0; int totalAmount = 0; foreach (Match match in Regex.Matches(comment.Body, _syntaxRegex)) { string amountString = match.Value.Substring(0, 2); int amount = Convert.ToInt32(amountString); totalAmount += amount; string cardName = match.Value.Trim(' ').Trim(' ').Substring(2); EternalCard card = _cards.Where((x) => x.Name == cardName).FirstOrDefault(); if (card != null) { tempMessage += @"[" + cardName + "](" + card.ImageUrl + ") - [EWC](https://eternalwarcry.com/cards/details/" + card.SetNumber + "-" + card.EternalID + "/" + card.Name.ToLower().Replace(' ', '-') + ") " + Environment.NewLine; tempNumMatches++; } } if (totalAmount == 45 || totalAmount == 75) { message += tempMessage; numMatches += tempNumMatches; } }
public void ConsumeComments(string subreddit) { _syntaxRegex = @"\d{1,2}\s[A-Z].*[a-z]\s"; string message = ""; int numMatches = 0; int totalAmount = 0; foreach (Match match in Regex.Matches(subreddit, _syntaxRegex)) { string amountString = match.Value.Substring(0, 2); int amount = Convert.ToInt32(amountString); totalAmount += amount; string cardName = match.Value.Trim(' ').Trim(' ').Substring(2); EternalCard card = _cards.Where((x) => x.Name == cardName).FirstOrDefault(); if (card != null) { numMatches++; message += cardName + Environment.NewLine; //message += @"[" + cardName + "](" + card.ImageUrl + ") - [EWC](https://eternalwarcry.com/cards/details/" + card.SetNumber + "-" + card.EternalID + "/" + card.Name.ToLower().Replace(' ', '-') + ") " + Environment.NewLine; } } if (totalAmount == 45 || totalAmount == 75) { Console.WriteLine(message); } }
private void FindCardsInBrackets(RedditSharp.Things.Comment comment, ref string message, ref int numMatches) { foreach (Match match in Regex.Matches(comment.Body, _syntaxRegex)) { string cardName = match.Value.Trim('[').Trim(']'); EternalCard card = _cards.Where((x) => x.Name == cardName).FirstOrDefault(); if (card != null) { numMatches++; message += @"[" + cardName + "](" + card.ImageUrl + ") - [EWC](https://eternalwarcry.com/cards/details/" + card.SetNumber + "-" + card.EternalID + "/" + card.Name.ToLower().Replace(' ', '-') + ") " + Environment.NewLine; } } }