我正在尝试拆分 Tradacoms Edi 文件中的重复字符串。
我有一条线如下
DNC+14+1+1++268:2758005:268:2758006
我想根据代码拆分它:268。所以我应该得到 2 行(2758005、2758006)
我正在使用 rtex 过滤器提取 268 的值。但是,它只提取第一个值(278005)
关于如何正确拆分它们的任何想法?
- 艾伦-
正确执行此操作的方法是使用企业版 mapforce。而不是使用工具来拆分文件,而是通过设置 EDI 输入并选择正确的标准版本来读取文件。
它将清理左侧的组件,所有标记的内容都在右侧字段中。然后你可以完美地映射到你想要的任何东西。
否则,您可以使用字符串函数的变体来执行此操作。但这将非常混乱。你真的应该使用 EDI 来做 EDI。如果您无法获得正确的 mapforce 版本,那么可以使用免费的 x11 工具将其转换为 XML。这是一个免费的开源软件。https://x12parser.codeplex.com/documentation
从那里使用 mapforce,您可以添加 XML 输入(mapforce 可以为您生成 XSD)并从那里开始映射。对我来说,这比简单地拆分字符串要好得多,这否定了 mapforce 的实际实现来为您处理所有逻辑/废话。
干杯,
沃尔特。