Я работаю с файлами EDI X12 (в частности, с 835 для тех из вас, кто работает в сфере здравоохранения), и у меня есть конкретный поставщик, который использует версию, не совместимую с HIPAA (я думаю, 3090).Проблема в том, что в определенном сегменте (опять же, PLB - для тех, кому это нужно) они отправляют код, который больше не поддерживается стандартом HIPAA.Мне нужно найти конкретный код и обновить его исправленным кодом.
Я думаю, что Regex будет лучше для этого, но я все еще очень плохо знаком с Regex, и я не уверен, гденачать.Моя текущая методология заключается в том, чтобы превратить файл в массив строк, найти массив, начинающийся с «PLB», разбить его на массив строк, найти код и изменить его.Как вы можете догадаться, это очень многословный код для чего-то, что должно быть (я думаю) довольно простым.
Вот пример того, что я ищу:
~PLB|1902841224|20100228|49>KC15X078001104|.08~
Ивот что я хочу изменить на:
~PLB|1902841224|20100228|CS>KC15X078001104|.08~
Любые предложения?
ОБНОВЛЕНИЕ: После проверки я обнаружил, что недостаточно четко определил свой вопрос.Вышеприведенная запись является примером, но это не обязательно любое конкретное совпадение форматирования - есть три вещи, которые могут измениться между этой записью и некоторыми другими (в другом файле), которые мне нужно исправить.Это:
- Канал (|) может быть любым не алфавитно-цифровым символом.Сам файл будет определять, какой символ (обычно это труба или звездочка).
- Символ> также может быть любым другим не буквенно-цифровым символом (чаще всего: или>)
- Набор чиселсразу после PLB идет идентификатор, который может меняться по формату и длине.Я только видел там числовые идентификаторы, но технически это мог быть буквенно-цифровой код, и он не обязательно должен был бы быть 10 символами.
Мой план - использовать String.Format () с моим Regexсопоставить строку так, чтобы |и> можно заменить на правильные символы.
И для записи.Да, я ненавижу ANSI X12.