在Python中解析EDIFACT UN

时间:2016-10-21 12:36:40

标签: python regex edifact

我需要在python中解析EDIFACT消息 要查找段,例如UNB,我正在尝试使用正则表达式

pattern = "UNB(.*?)(?<!\?)(\?\?)*[']"  

和测试字符串

message = "UNA+456+6:54+654'UNB+64+654+54?'UNC+54+654+654'"  

细分范围是&#39; (撇号),是转义字符。 在RegexCoach中,匹配字符串是 UNB + 64 + 654 + 54?&#39; UNC + 54 + 654 + 654&#39;
这是正确的,因为UNB逃脱后的第一个撇号 但是在Python 3.5中

re.match(pattern,message)

返回无:(你知道哪里出错了吗? 或建议另一种解决方案?

感谢
测试:

Regular expression visualization

Debuggex Demo

0 个答案:

没有答案