Main Content

本页采用了机器翻译。点击此处可查看英文原文。

slreq.getTextRange, slreq.getTextRanges

获取行范围

自 R2022b 起

    说明

    示例

    lr = slreq.getTextRange(fileName,lines) 返回与 fileName 指定的文件中的代码行 lines 关联的行范围。

    注意

    在使用此函数之前,您必须在 MATLAB® 编辑器中打开该文件。

    示例

    lr = slreq.getTextRange(fileName,blockSID,lines) 返回与 blockSID 指定的 MATLAB Function模块中的行关联的行范围。

    注意

    使用此函数之前,您必须在Simulink®中打开模型。

    lr = slreq.getTextRanges(___) 是执行 slreq.getTextRange 的另一种方法。

    示例

    lr = slreq.getTextRange(fileName,ID) 返回与 ID 指定的 ID 关联的行范围。slreq.getTextRanges 不适用于此语法。

    示例

    全部折叠

    此示例显示如何修改 slreq.TextRange 对象的行号。

    打开myAdd代码文件并加载myAddRequirements需求集。

    file = "myAdd.m";
    open(file);
    slreq.load("myAddRequirements");

    获取与myAdd函数中的第三行关联的slreq.TextRange对象。

    cr = slreq.getTextRange(file,3);

    获取与 slreq.TextRange 对象关联的行号。

    lines = getLineRange(cr)
    lines = 1×2
    
         3     3
    
    

    slreq.TextRange 对象与行号 2 关联。

    setLineRange(cr,2)

    通过获取行范围的文本内容确认slreq.TextRange对象与该行相关联。

    text = getText(cr)
    text = 
    'y = u + v;'
    

    此示例显示如何在 MATLAB Function 模块中获取 slreq.TextRange 对象。

    打开 myAddModel Simulink®模型。

    model = "myAddModel";
    open_system(model);

    获取 MATLAB Function 模块的 SID 并将其作为字符串返回。

    block = "myAddModel/MATLAB Function";
    SID = get_param(block,"SID")
    SID = 
    '8'
    

    获取与 MATLAB Function 模块第一行关联的 slreq.TextRange 对象。

    cr = slreq.getTextRange(model,SID,1);

    此示例显示如何使用 ID 属性的值来获取slreq.TextRange对象。

    打开 myAdd 代码文件。

    file = "myAdd.m";
    open(file);

    获取与 ID 738659.742.1 关联的 slreq.TextRange 对象。

    cr = slreq.getTextRange(file,"738659.742.1");

    输入参数

    全部折叠

    包含代码行的文件的名称,指定为字符串标量或字符向量。

    示例: "myAdd.m"

    行范围的起始和结束行号,指定为 [start end] 形式的双精度数组或双精度标量。

    示例: [1 4], 1

    MATLAB Function 模块 SID,指定为字符串标量或字符向量。

    示例: "30"

    行范围 ID,指定为字符串标量或字符向量。该 ID 是对象的 Id属性。

    示例: "738659.742.1"

    输出参量

    全部折叠

    行范围,以 slreq.TextRange 对象数组返回。

    提示

    • 您还可以使用 getTextRange 方法来获取代码范围对象。

    版本历史记录

    在 R2022b 中推出