我怎样才能|ADT^A05|
摆脱
“MSH|^~\&|PHTADT09|ABC|DADIST00|ABC|20120425152829|rcalini1|ADT^A05|20429208851634|P|2.1|560”
我试过这个但没有工作
"|([A-Z]{3})^([A-Z]{1})([0-9]{2})|"
您需要转义|
and ^
,因为它们是正则表达式中的特殊字符。
@"\|([A-Z]{3})\^([A-Z]{1})([0-9]{2})\|"
或者,如果您不喜欢逐字文字:
"\\|([A-Z]{3})\\^([A-Z]{1})([0-9]{2})\\|"
请注意,逐字文字(@
在开头引号之前使用)使正则表达式更具可读性(并且更便携——现在您可以将该正则表达式复制/粘贴到其他地方)。除非您有充分的理由不这样做,否则您应该始终将逐字文字与正则表达式字符串一起使用。
如果您可以访问 BizTalk,Microsoft 有用于 HL7的加速器,可以将您的消息分解为 XML。否则,我会选择LB的答案并直接拆分字符串。