0
我已经得到了DTD的OFX 1.03较好的正则表达式(其最新的版本尽管已经开发并发布了1.60,但我离题...)是否有分析DTD
我想用正则表达式来有那一刹那的实体元素,其他标签进入其部分作进一步处理组,使得我拿到一个标签是这样的:
<!ENTITY % ACCTTOMACRO "(BANKACCTTO | CCACCTTO | INVACCTTO)">
,并创建一个对象像这样
新EntityTag {字符串名称=“ %ACCTTOMACRO“; string [] ChildTypes = new string [] {“BANKACCTTO”,“CCACCTTO”,“INVACCTTO”}};
我有一个正则表达式看起来像这样:
Regex re = new Regex(@"<!(\b)+([\s\S])?[^>]+>");
不可否认,我是新来的正则表达式,所以我做了好为止得到这个,给了我一个匹配集合在没有评论的每个标签的DTD。
我想利用分组来帮助创建前面提到的对象。
如果我在完全错误的道路上,请指导我,但是如果你下载这个文件,我认为你可能会发现它不是标准的。 (视觉工作室用格式化文档的方式抛出一些红旗)
我不指望任何人去麻烦,但对于这里好奇的是link下载规格。
不幸的是,版本1.03在SGML中不是XML,因此版本1分支中不存在XML模式文档。它也不幸,因为OFX的1.02/1.03版本是我需要实现的。幸运的是,我有一个工作粗糙的SGMLTag引擎。现在我必须验证它。 对不起,如果我不清楚我的问题,我使用的是什么版本。 – 2009-10-16 19:18:45
在http://www.hitsw.com/xml_utilites/处有一个免费的DTD到模式转换器 - 我没有尝试过,但那样或类似的东西可能会有所帮助。 – TrueWill 2009-10-16 21:05:03
行..所以它已经有一段时间了,现在我会给你一个更新。我在这里使用一点点的手。我使用OFX的2.11规范,并使用xsd.exe生成一些代码。我使用属性标记哪些项目符合哪些版本,然后使用中间层对象来处理不同版本之间来回格式化标记。虽然你的回答在我的问题的正则表达式部分并不真正保持真实,但你会得到答案标志,为我提供了一个不同的工作方向!非常感谢你! – 2009-10-23 20:40:58