diviser une longue chaîne en fonction de la position du délimiteurSalut
J'ai une colonne qui comporte de longues chaînes (voir exemple ci-dessous). Je souhaite extraire tout le texte après le 7ème délimiteur de "_" en partant de la droite. J'ai essayé Munger mais cela ne semble pas bien fonctionner à la fin.
quelqu'un peut-il me suggérer comment procéder correctement ?
1)shjdjsh._ndjrpe_hfkjd_tyrwytre5_hlhm_jgds.d._jkdjf_hfkd_a
sortie souhaitée : ndjrpe_hfkjd_tyrwytre5_hlhm_jgds.d._jkdjf_hfkd_a
2)hhd_wew_klf:_jdbfjdf_qwkokv_ctls_msdn_a_f_g_skjd_lad_vtl_sdjnskjshdja_jndf_skdj_ccf
sortie souhaitée : g_skjd_lad_vtl_sdjnskjshdja_jndf_skdj_ccf
Automatisation et scriptsRe : diviser une longue chaîne en fonction de la position du délimiteurVoici la formule que j'ai utilisée
Substr(
:Column 1,
Contains( :Column 1, Word( -8, :Column 1, "_" ) )
)

Re : diviser une longue chaîne en fonction de la position du délimiteurVous pouvez utiliser Word() avec des indices négatifs
Names Default To Here(1);
str1 = "shjdjsh._ndjrpe_hfkjd_tyrwytre5_hlhm_jgds.d._jkdjf_hfkd_a";
result1 = "ndjrpe_hfkjd_tyrwytre5_hlhm_jgds.d._jkdjf_hfkd_a";
str2 = "hhd_wew_klf:_jdbfjdf_qwkokv_ctls_msdn_a_f_g_skjd_lad_vtl_sdjnskjshdja_jndf_skdj_ccf";
result2 = "g_skjd_lad_vtl_sdjnskjshdja_jndf_skdj_ccf";
res1 = Word([-8 -1], str1, "_");
res2 = Word([-8 -1], str2, "_");
res1 == result1;
res2 == result2;