我想创建一个具有简单功能的记事本之类的简单编辑器…我需要在富文本框区域中为特定单词上色。我怎样才能做到这一点?
例如:当用户写这些词时,我想将它们涂成蓝色。这些词是:for,while,if,try,等。
for
while
if
try
如何使RichTextBox选择一个特定的单词,然后为它们着色?而且,如果我想发表评论并为后面的所有内容着色//,那么如何在richtextbox中完成呢?
//
如何在文本框中为行编号,以便现在在编辑器中进行编码时可以使用行号?
您可以在此处构建一些代码以实现所需的功能。
private void ColourRrbText(RichTextBox rtb) { Regex regExp = new Regex("\b(For|Next|If|Then)\b"); foreach (Match match in regExp.Matches(rtb.Text)) { rtb.Select(match.Index, match.Length); rtb.SelectionColor = Color.Blue; } }
CodeProject文章“在RichTextBox中启用语法突出显示”显示了如何在RichTextBox中使用RegEx来执行语法突出显示。具体来说,请看SyntaxRichtTextBox.cs实现。
SyntaxRichtTextBox.cs