【问题标题】:RichTextBox selective syntax highlightingRichTextBox 选择性语法高亮
【发布时间】:2013-08-13 21:48:41
【问题描述】:

我有这段代码可以将基本语法高亮应用到 RichTextBox

    public Regex _KeyWords = new Regex ("event|explicit|extern|false|finally|fixed|float|for");

    private void button1_Click(object sender, EventArgs e)
    {
        int _SelPos = richTextBox1.SelectionStart;
        foreach (Match keyWordMatch in _KeyWords.Matches(richTextBox1.Text))
        {
            richTextBox1.Select(keyWordMatch.Index, keyWordMatch.Length);
            richTextBox1.SelectionColor = Color.Blue;
            richTextBox1.SelectionStart = _SelPos;
            richTextBox1.SelectionColor = Color.Black;
        }
    }

它工作正常,但我找不到一种方法来突出显示 only 包含在两个标签之间的文本,例如:

<tagStart>
public Form1()
{
   InitializeComponent();
}
<tagEnd>

我认为可以使用 Regex 来完成,但我没有太多经验,因此我们将不胜感激。

【问题讨论】:

    标签: c# winforms richtextbox syntax-highlighting


    【解决方案1】:

    这个正则表达式应该可以工作。

    (?<=<tagStart>)(.*)(?=<tagEnd>)
    

    GSkinner example

    Credit

    【讨论】:

    • @Adrao 更新了新的 GSkinner 链接。在那里工作,你是什么意思?
    猜你喜欢
    • 1970-01-01
    • 2017-11-06
    • 2022-01-22
    • 2023-03-26
    • 1970-01-01
    • 2011-06-14
    • 1970-01-01
    • 2011-08-24
    相关资源
    最近更新 更多