if ~isempty(regexpi(Relation_1,'asw')) Signal_Type=DataTypeGet_Func(Table_Signal.NewName{i_Signal});
时间: 2024-03-29 09:38:07 浏览: 17
这段代码中的 `regexpi` 函数是 MATLAB 中用于进行正则表达式匹配的函数,用于判断字符串 `Relation_1` 是否包含字符串 `"asw"`。如果包含,则使用 `DataTypeGet_Func` 函数获取 `Table_Signal.NewName{i_Signal}` 的数据类型,并将其存储在变量 `Signal_Type` 中。
相关问题
%% 数据类型校验 if ~isempty(regexpi(Relation_1,'asw')) Signal_Type=DataTypeGet_Func(Table_Signal.NewName{i_Signal}); if strcmpi(Signal_Type,'single') Signal_Type='float'; end if ~strcmpi(Signal_Type,Table_Signal.Datatype{i_Signal}) if ~isempty(Table_Signal.NewName{i_Signal}) ErrorType='数据类型不匹配'; ErrorDesc='ASW列表中所述数据类型与其信号名中数据类型不一致'; X_old{1,1}=ErrorType; X_old{1,2}=Table_Signal.NewName{i_Signal}; X_old{1,3}=ErrorDesc; X_old{1,4}=Table_Signal.Datatype{i_Signal}; Table_Check{n_check,:}=X_old; n_check=n_check+1; end end end end end
这段代码是进行数据类型校验的部分。首先使用正则表达式判断变量 `Relation_1` 是否包含字符串 `"asw"`,如果包含则将信号类型 `Signal_Type` 设为变量 `Table_Signal.NewName{i_Signal}` 的数据类型,如果该数据类型为 `"single"`,则将其转换为 `"float"`。
接下来,如果 `Signal_Type` 与 `Table_Signal.Datatype{i_Signal}` 不相同,则认为数据类型不匹配,并将错误信息存入变量 `Table_Check` 中,用来记录检查结果。最后 `n_check` 加 1 以便记录下一个错误信息。
该代码段的作用是确保在ASW列表中所述的数据类型与其信号名中的数据类型一致,如果不一致则记录为错误信息,以便后续处理。
%% RelationWithAsw 校验 Relation_1=Table_Signal.SignalGotoFrom{i_Signal}; Flag_IntCan_1=0; if ~isempty(regexpi(Relation_1,'IntCan')) if isempty(Table_Signal.InternalCANSignal{i_Signal}) X_old{1,1}='内CAN信号与标注关系不符'; X_old{1,2}=Table_Signal.NewName{i_Signal}; X_old{1,3}='此信号的SignalGotoFrom与对应内CAN信号不符'; X_old{1,4}=[]; Table_Check{n_check,:}=X_old; n_check=n_check+1; end else if ~isempty(Table_Signal.InternalCANSignal{i_Signal}) if isempty(regexpi(Relation_1,'IntCan')) X_old{1,1}='内CAN信号与标注关系不符'; X_old{1,2}=Table_Signal.NewName{i_Signal}; X_old{1,3}='此信号的SignalGotoFrom与对应内CAN信号不符'; X_old{1,4}=[]; Table_Check{n_check,:}=X_old; n_check=n_check+1; end end end
这段代码是 `RelationWithAsw` 校验部分的代码。首先使用 `Table_Signal.SignalGotoFrom{i_Signal}` 获取信号的 `"SignalGotoFrom"` 属性,并将其存储在变量 `Relation_1` 中。接着判断 `Relation_1` 是否包含字符串 `"IntCan"`,如果包含,则判断 `Table_Signal.InternalCANSignal{i_Signal}` 是否为空,如果为空,则记录错误信息,表示此信号的 `"SignalGotoFrom"` 属性与对应的内部 CAN 信号不符。
如果 `Relation_1` 不包含字符串 `"IntCan"`,则判断 `Table_Signal.InternalCANSignal{i_Signal}` 是否为空,如果不为空,则记录错误信息,表示此信号的 `"SignalGotoFrom"` 属性与对应的内部 CAN 信号不符。
该代码段的作用是确保信号的 `"SignalGotoFrom"` 属性与对应的内部 CAN 信号一致,如果不一致则记录为错误信息,以便后续处理。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)