Hallo,
Ich versuche, den Namen mehrerer Spaltenüberschriften umzubenennen, die aus einer bestimmten Zeichenfolge bestehen, sie jedoch mit der vorhandenen Zeichenfolge umzubenennen und gleichzeitig den vorderen Teil der Zeichenfolge zu entfernen.
Beispiel:
ABC_12::ABCD_AB_ABCDEF_A_ABCDE_X_X_A1_1234_ABCD_ TESTING_AB_TEST_ABCD_TESTED_AB_A1 --> TESTING_AB_TEST_ABCD_TESTED_AB_A1
Die Anzahl der Zeichen im ersten Teil der Zeichenfolge (orange) bleibt immer gleich, im zweiten Teil der Zeichenfolge variiert sie von 1 zu 1.
Was ich bisher gemacht habe, ist Folgendes:
dt=current data table();
colList = dt << get column names( string );
For( i = 1, i <= N Items( colList ), i++,
If( Left( colList[i], 50 ) == "ABC_12::ABCD_AB_ABCDEF_A_ABCDE_X_X_A1_1234_ABCD",
Column( dt, colList[i] ) << Substr((colList[i],50) ), // this is the part where i m stuck.
)
);
Ich habe versucht, Trim & Left zu verwenden. Aber es funktioniert nicht. Ich habe eine Idee, „Name festlegen“ zu verwenden, um eine Zeichenfolge nach dem 50. Zeichen aufzunehmen. Aber es muss einen besseren Weg geben, dies zu tun.
Sie müssen verwenden
<< set name
um den Namen der Spalte zu ändern
Names Default To Here( 1 );
dt = Current Data Table();
colList = dt << get column names( string );
For( i = 1, i <= N Items( colList ), i++,
If( Left( colList[i], 48 ) == "ABC_12::ABCD_AB_ABCDEF_A_ABCDE_X_X_A1_1234_ABCD_",
Column( dt, colList[i] ) << set name( Substr( colList[i], 49 ) ), // this is the part where i m stuck.
)
);