3 回答

TA貢獻1735條經(jīng)驗 獲得超5個贊
我有類似的問題,即在段之間有空白行,我解決了這個問題:
content = content.replace(/^\s*\n/gm, '');
注意:這只會刪除空白行。您仍然需要弄清楚如何獲得當(dāng)前行的下一行
您可以嘗試使用正則表達(dá)式來消除所有“ \ n”而不是任何段。

TA貢獻1824條經(jīng)驗 獲得超5個贊
根據(jù)您的問題,包含換行符的HL7字段應(yīng)包含OBX(5,1)觀察值。
觀察值可能包含換行符作為數(shù)據(jù)的一部分。默認(rèn)情況下,換行符(<CR>或ASCII 13)是分段分隔符。如果將其作為數(shù)據(jù)的一部分接收,則在解析消息時會出現(xiàn)問題。這是您在問題中提到的問題的根本原因。
段分隔符不可協(xié)商。它始終是回車符。我已經(jīng)在此答案中對此進行了更詳細(xì)的解釋。
理想情況下,在構(gòu)建HL7消息時,應(yīng)將這些換行符替換為其轉(zhuǎn)義序列。我在這里的較早答案之一已經(jīng)給出了有關(guān)它的更多詳細(xì)信息。
因此,您的入站郵件
OBX|68|FT|PT6663&IMP^PET/CT Imaging Whole Body||
||||||F|||202254836969552|||
應(yīng)該是
OBX|68|FT|PT6663&IMP^PET/CT Imaging Whole Body||\X0D\\X0D\||||||F|||202254836969552|||
關(guān)于您如何使用Mirth / Javascript執(zhí)行此操作的實際問題,在您的特定用例中應(yīng)該不需要。在將消息發(fā)送給Mirth之前,應(yīng)完成此轉(zhuǎn)換。因此,向您發(fā)送此消息的人應(yīng)該像這樣構(gòu)建它。
在UI上實際顯示觀察值時,您再次需要執(zhí)行相反的過程。
編輯:
如果換行符不同于<CR>(ASCII 13),則應(yīng)在中替換相應(yīng)的十六進制\X0D\。
添加回答
舉報