Замените такие символы, как «á» на «a» в Powercenter - PullRequest
0 голосов
/ 07 ноября 2019

Мне нужна помощь с Powercenter. У меня есть плоский файл, который я использую, и в некоторых столбцах есть текст, такой как «Los Ángeles», который мне нужно изменить на «Los Angeles», иначе «Á» отображается как нулевой символ, заканчивающийся «Los NULLngeles». "или что-то в этом роде.

Некоторая дополнительная информация:

  • Исходный файл представляет собой плоский файл .CSV, разделенный знаком"; "в формате файла кодовая страница: 7-битный ASCII

  • Целевой файл - это плоский файл .TXT с разделителем столбцов "|". Имеет формат файла, кодовая страница: MS Windows Latin 1 (ANSI), расширенный набор латинских 1

Я попытался использовать REPLACECHR в следующем коде:

REPLACECHR(1,
REPLACECHR(1,
REPLACECHR(1,
REPLACECHR(1,
REPLACECHR(1,
REPLACECHR(1,
REPLACECHR(1,
REPLACECHR(1,
REPLACECHR(1,
REPLACECHR(1,
REPLACECHR(1,
REPLACECHR(1,
REPLACECHR(0, clv, '|', ''),'á','a'),'é','e'),'í','i'),'ó','o'),'ú','u'),'Á','A'),'É','E'),'Í','I'),'Ó','O'),'Ú','U'),'ñ','n'),'Ñ','Ñ')

Однако это не сработало. Как я могу сделать так, чтобы он делал то, что я хочу?

В качестве дополнения, первый REPLACECHR должен удалить все каналы, чтобы загрузка на сервер SQL не вылетала.

1 Ответ

0 голосов
/ 14 ноября 2019

Это проблема качества данных, которую необходимо вернуть команде источника. Его нельзя найти с помощью REPLACE_CHR, так как он не является символом ASCII.

Что касается сопоставления, то не-ascii-символы, подобные этому, можно удалить с помощью REG_REPLACE. Пример: REG_REPLACE (PRODUCT_DESC. '[^ [: Print]]', '')

Другие способы сделать это: https://kb.informatica.com/howto/6/Pages/21/535269.aspx?

...