I'm having issues with this code. Everytime when it runs, it returns me the 'System.NullReferenceException'.
// Clear out the Array of code words
wordBuffer = null;
Int32 syntaxCount = 0;
// Create the regular expression object to match against the string
Regex defaultRegex = new Regex(@"\w+|[^A-Za-z0-9_ \f\t\v]",
RegexOptions.IgnoreCase | RegexOptions.Singleline);
Match wordMatch;
// Loop through the string and continue to record
// words and symbols and their corresponding positions and lengths
for (wordMatch = defaultRegex.Match(s); wordMatch.Success; wordMatch = wordMatch.NextMatch())
{
var word = new Object[3] { wordMatch.Value, wordMatch.Index, wordMatch.Length };
wordBuffer[syntaxCount] = word;
Debug.WriteLine("Found = " + word[0]);
syntaxCount++;
}
// return the number of symbols and words
return syntaxCount;
The exception occurs on those lines:
Debug.WriteLine("Found = " + word[0]);
syntaxCount++;
Specifically when trying to get the word[0]
value, and on the second line with the syntaxCount
, but none of those values are null, as you can see in the image below:
The variable "s" is just a line of a RichEditBox, word[0] has a value, so why is it returning the NullReferenceException? syntaxCount has a value too :/