some renaming and removed comment

This commit is contained in:
xsftk 2017-11-15 13:51:00 +07:00
parent fc850d1f6e
commit e8fc244bb6

View File

@ -127,32 +127,32 @@ namespace NadekoBot.Modules.CustomReactions.Extensions
public static WordPosition GetWordPosition(this string str, string word) public static WordPosition GetWordPosition(this string str, string word)
{ {
var indexOfWord = str.IndexOf(word); var wordIndex = str.IndexOf(word);
if (indexOfWord == -1) if (wordIndex == -1)
return WordPosition.None; return WordPosition.None;
if (indexOfWord == 0) // on start if (wordIndex == 0)
{ {
if (word.Length < str.Length && str.isInvalidWordChar(word.Length)) // filter char after word index if (word.Length < str.Length && str.isValidWordDivider(word.Length))
return WordPosition.Start; return WordPosition.Start;
} }
else if ((indexOfWord + word.Length) == str.Length) // on end else if ((wordIndex + word.Length) == str.Length)
{ {
if (str.isInvalidWordChar(indexOfWord - 1)) // filter char before word index if (str.isValidWordDivider(wordIndex - 1))
return WordPosition.End; return WordPosition.End;
} }
else if (str.isInvalidWordChar(indexOfWord - 1) && str.isInvalidWordChar(indexOfWord + word.Length)) // on middle else if (str.isValidWordDivider(wordIndex - 1) && str.isValidWordDivider(wordIndex + word.Length))
return WordPosition.Middle; return WordPosition.Middle;
return WordPosition.None; return WordPosition.None;
} }
private static bool isInvalidWordChar(this string str, int index) private static bool isValidWordDivider(this string str, int index)
{ {
var ch = (ushort)str[index]; var ch = str[index];
if (ch >= 65 && ch <= 90) // must be A-Z if (ch >= 'a' && ch <= 'z')
return false; return false;
if (ch >= 97 && ch <= 122) // a-z if (ch >= 'A' && ch <= 'Z')
return false; return false;
return true; return true;