正则表达式似乎无法正常运行

时间:2013-11-27 12:16:17

标签: c# regex winforms

我的字符串有问题。我不知道它有什么问题。我只想让它在RTB中改变颜色。每当我在RTB中输入“accesskey =”或“data-blablabla-blabla =”(不带引号)时,代码的颜色仍为黑色。

我的代码:

private void richTextBox1_TextChanged(object sender, EventArgs e)
{
     string attributes = @"\b(accesskey=|\data\-.+?\=)\b";
     MatchCollection attributeMatches = Regex.Matches(richTextBox1.Text, attributes);

     foreach (Match m in attributeMatches)
     {
         richTextBox1.SelectionStart = m.Index;
         richTextBox1.SelectionLength = m.Length;
         richTextBox1.SelectionColor = Color.Red;
     }

1 个答案:

答案 0 :(得分:2)

根据Regular Expression Language Quick Reference \b是退格字符,我非常怀疑你会在文字中找到它。因此,您的正则表达式永远不会匹配任何内容。

如果要与空格匹配,请使用\s