验证ICD-10-CM

mso*_*son 8 c#

是否有人为ICD-10-CM编写了验证(正则表达式或其他)?

我对琐碎的解决方案(3-7字母数字)不感兴趣,我想知道如何处理第7位数字要求的合并.

ara*_*ao6 7

我没有为ICD-10-CM编写正则表达式,但我编写了一个查找引擎.您可以通过将官方XML文件解析为SQL数据库,并在数据库中搜索代码(如果未找到结果,代码无效)来执行相同操作.不幸的是,由于各种NDAs,我不能在这里发布我的代码,但做同样的事情应该是微不足道的.好处是你只能得到有效的代码(而不是"看起来像ICD-10-CM但是无效的代码",正如你使用正则表达式那样).

或者(我不推荐它)你可以在一个简单的正则表达式上对XML文件本身进行全文搜索,但它会有错误(来自经验).


Mar*_*nce 6

我刚为所有2016 ICD10代码编写了一个正则表达式:

/^[A-TV-Z]\d[0-9AB](?:\.([\dA-KXZ]|[\dA-KXZ][\dAX-Z]|[\dA-KXZ][\dAX-Z][\dX]|[\dA-KXZ][\dAX-Z][\dX][0-59A-HJKMNP-S]))?$/
Run Code Online (Sandbox Code Playgroud)

这个正则表达式假设在第三个字符应该出现之后存在点; CDC通过省略的点分发代码列表.

在我关于ICD10代码结构的研究中,并未记录所有规则和陷阱.这个正则表达式是根据实际存在的代码构建的,因为在线发现ICD10结构的文档并不能说明整个故事.

第一个字符是alpha,除了U.

第二个字符是数字.

第三个字符是数字,A或B(最近添加了这些字母).

代码长度超过3个字符的点(在代码规则的任何描述中不称为字符).

第四个字符是数字或字母ABCDEFGHIJKXZ.

第五个字符是数字或字母AXYZ.

第六个字符是数字或X.

当作为第四,第五或第六个字符(但从不是最后一个字符)出现时,X作为占位符.

第七个字符比任何参考建议都复杂.A,D,s用于后遗症.某些其他代码集也有自己的扩展名; 对于骨折,这些是ABCDEFGHJKMNPQRS,其中ADS仍表示后遗症但可能提供额外信息.存在在该位置使用数字01234的代码.

横向性根本不是直截了当的.文档说明1 == right,2 == left,这通常是正确的.但是,3 ==双边,9 ==未指定(第5个字符)和0 ==未指定(第6个字符)并不总是正确.

有许多代码,其中侧向性与其他东西一起表示,通常是肢体.在这些代码中,左,右,未指定用1,2,3表示; 4,5,6; 7,8,9代表另一个因素.也可以存在使用0的双重非特定代码.

此外,表达偏侧性的角色并不总是前六个角色的最后一个角色.

一些横向代码的描述表明了另一个"其他"方面.