Datastage, удалить только последние два символа строки

Эта функция: Trim (In.Col, Right (In.Col, 2), 'T') работает, если последние> 2 символов не совпадают.

Что я хочу:

abczzzz -> abczz

Что я получаю:

abczzzz -> abc

Как мне решить эту проблему?


person paulstomb    schedule 13.11.2015    source источник


Ответы (2)


Параметр «T» удаляет все завершающие вхождения. Поскольку вы ограничиваете ввод только двумя символами с помощью функции Right (), второе появление никогда не будет завершающим символом.

Похоже, вы просто делаете подстроку ..? Если это так, тогда вы можете просто вместо этого создать подстроку [].

выражение [[начало,] длина]

In.Col [(длина строки) - 2]

person Matt Calderon    schedule 24.11.2015

Я предпочитаю функцию Left (), хотя здесь она эквивалентна, так как самодокументируется.

Left(InLink.MyString, Len(InLink.MyString) - 2)
person Ray Wurlod    schedule 11.02.2021