编辑器中的高亮括号

4

我已经建立了一个基本编辑器,具有代码自动完成功能,并显示参数列表。现在我想添加高亮匹配括号功能。如何实现?

更新
我知道一些基本算法来查找匹配的括号,但不知道如何突出显示它! [更改匹配括号的颜色或将其设置为粗体].
我正在使用多行文本框解决此问题。


1
从左括号开始,逐个搜索字符,直到遇到右括号,如果遇到另一个左括号,则继续搜索,直到遇到两个右括号,以此类推... - Hunter McMillen
@HunterMcMillen 我更新了我的问题并增加了更多详细信息。请查看。谢谢 :) - Sourav
1个回答

1

根据您当前的功能,您可能拥有源代码的某种解析树。如果是这样,您应该能够相对容易地找到代表源代码中当前位置上方花括号的节点。

否则,像Hunter McMillen建议的那样计算大括号数量可能就足够了。如果您支持注释和字符串字面量,请不要忘记跳过它们。


我更新了我的问题并且更加详细了,请您查看。谢谢 :) - Sourav
@Sourav,你最好创建一个新的问题,因为这个问题似乎与“高亮”无关,而是与“查找匹配括号”部分有关。顺便说一句,据我所知,基本文本框不支持为字符设置不同的颜色 - 可以考虑使用RichTextBox代替。 - Alexei Levenkov

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接