Я хочу иметь значение $ _ Wk_leer_Ixx , но чтобы получить значение, я должен сделать короткий расчет.
Мой код (неверно):
content = fileread( 'Wk.subvars' ) ;
match = regexp( content, '(?<=\$_Wk_leer_m,\s+str\s*=\s*''\s*)[^\s'']+', 'match' ) ;
Wk1_leer_m = str2double( match ) ;
match = regexp( content, '(?<=\$_Wk_leer_Ixx,\s+str\s*=\s*''\s*)[^\s'']+', 'match' ) ;
Wk_leer_Ixx = str2double( match ) ;
Пропущены шаги:
str = ' $G_Wk.$_Wk_leer_m * 2.2 ' )
-> Я должен вызвать имя переменной после $G_Wk.
-> $_Wk_leer_m
- и число после
*
знак ..... -> 2.2
после этого я могу сделать расчет. (значение Wk_leer_m у меня есть)
Ввод:
!file.version=1.3!
! Wagenkas
subvargroup.begin ($G_Wk)
subvar( $_Wk_leer_m, str = ' 15601 ' ) ! [kg] Wagenkasten leer
subvar( $_Wk_leer_CoG_x, str = ' 0.019 ' )
subvar( $_Wk_leer_CoG_y, str = '-0.007 ' )
subvar( $_Wk_leer_CoG_z, str = ' 1.644 ' )
subvar( $_Wk_leer_Ixx, str = ' $G_Wk.$_Wk_leer_m * 111 ' )
subvar( $_Wk_leer_Iyy, str = ' $G_Wk.$_Wk_leer_m * 222 ' )
subvar( $_Wk_leer_Izz, str = ' $G_Wk.$_Wk_leer_m * 333 ' )
subvar( $_Wk_betrieblich_m, str = ' 27660 ' ) ! [kg] Wagenkasten betrieblich
subvar( $_Wk_betrieblich_CoG_x, str = ' 0.0107' )
subvar( $_Wk_betrieblich_CoG_y, str = '-0.0039 ' )
subvar( $_Wk_betrieblich_CoG_z, str = ' 1.7608 ' )
subvar( $_Wk_betrieblich_Ixx, str = ' $G_Wk.$_Wk_betrieblich_m * 444 ' )
subvar( $_Wk_betrieblich_Iyy, str = ' $G_Wk.$_Wk_betrieblich_m * 555 ' )
subvar( $_Wk_betrieblich_Izz, str = ' $G_Wk.$_Wk_betrieblich_m * 666 ' )
subvar( $_Wk_voll_m, str = ' 33690 ' ) ! [kg] Wagenkasten voll beladen
subvar( $_Wk_voll_CoG_x, str = ' 0.0088 ' )
subvar( $_Wk_voll_CoG_y, str = '-0.0032 ' )
subvar( $_Wk_voll_CoG_z, str = ' 1.788 ' )
subvar( $_Wk_voll_Ixx, str = ' $G_Wk.$_Wk_voll_m * 777 ' )
subvar( $_Wk_voll_Iyy, str = ' $G_Wk.$_Wk_voll_m * 888 ' )
subvar( $_Wk_voll_Izz, str = ' $G_Wk.$_Wk_voll_m * 999 ' )
subvargroup.end ($G_Wk)