如何在编辑器中搜索变量名称?

时间:2012-07-05 09:32:24

标签: matlab variables search variable-names

在函数中,当函数结束之前或变量被覆盖之前未随后使用已定义的变量时,MATLAB编辑器会显示警告。这显然告诉我编辑器有一种在代码中搜索给定变量的方法。

我可以手动执行此操作吗? Find函数在这里显然受到限制,因为它只搜索编辑器窗口中的文本正文(包括注释)以搜索字符串的匹配。这使得在搜索具有短名称的变量时非常不方便(例如我常用的“a”)。

3 个答案:

答案 0 :(得分:5)

我无法告诉您有关内置编辑器的早期版本,但至少从2011b开始,编辑器的右侧边缘会为以下内容创建颜色标记:

  • 警告,标有橙色
  • 错误,标记为红色
  • 变量/函数出现:标记为深灰色,用于选定文本。

他们中的第三个是您正在寻找的。您只需双击变量名称或函数名称即可选择它,您的Matlab编辑器将自动突出显示相同标识符的其余部分,并在右侧带上用上面提到的灰色标记标记它们。

答案 1 :(得分:2)

您可以将搜索限制为匹配大小写和整个单词,只会在评论中为您提供此变量。

顺便说一句,你不应该使用像a,b,c这样的变量名。它使代码更难以阅读和维护。即使你有像循环和临时变量之类的虚拟变量,也可以使用例如indexFiles或tempValue

答案 2 :(得分:1)

您还可以使用一些正则表达式来匹配代码中的变量名称。

如果您假设任何变量名称与linefeed tab space ! " # $ % & ' ( ) * + , - . / : ; < = > ? [ \ ] ^ `` { | } ~中任何一个的代码的其余部分分开,那么您可以创建一个小函数,该函数将函数名称作为输入并输出其中的行提到变量名。但是,这种方法不会将函数名和变量名分开,但是无论如何都应该有一些标准来分离它们。我使用这种方法来改变我的MATLAB代码的变量名称(但是我的代码用awk编写,而不是用MATLAB编写)。

我想知道当你有一个包含数千或数万行代码的复杂程序时你会做什么,你的变量被命名为abc和等......