2011-04-08 19 views
19

No encuentro una guía definitiva para los formatos de código icd9.icd9 regex pattern

¿Alguien puede explicar el formato, especialmente el uso de ceros finales y finales?

Una C# regex para códigos icd9 y icd10 también sería agradable.

Gracias!

+0

¿Está buscando códigos totalmente calificados, o los códigos incompletos también están permitidos en su aplicación? –

Respuesta

30

que estaba buscando lo mismo y encontré lo que creo que es una respuesta más completa. Pensé que ayudaría a cualquier otra persona en el futuro.

ICD-9 Regex

El formato CIE 9 tiene un montón de maneras en que se puede formatear. Puede comenzar con V, E o un número.

  • Si se comienza con V, entonces tiene 2 números, un decimal, y luego hasta dos números
    • Ejemplos: V10.12 y V12
  • si comienza cuando E, entonces tiene 3 números, el lugar decimal, luego hasta dos números
    • Ejemplos: E000.0 y E002
  • Si se comienza con un número, entonces es hasta 3 números, un decimal, a continuación, hasta dos números
    • Ejemplos: 730.12 y 730

Un buen regex que verifica todas estas reglas es (Crédito va a sascomunitt)

^(V\d{2}(\.\d{1,2})?|\d{3}(\.\d{1,2})?|E\d{3}(\.\d)?)$ 

Según www.cms.gov ICD-10 tiene las siguientes normas de la CIE-10 Regex:

  • 3-7 Caracteres
  • Carácter 1 es alfa (no puede ser U)
  • Carácter 2 es numérico
  • Caracteres 3-7 son alfanuméricos
  • Después de 3 caracteres, usa un decimal
  • Uso del marcador de posición ficticio "x" (Este es el único que no tengo en cuenta en mi expresión regular ...)
  • Los caracteres alfabéticos no son sensibles

Aquí es la expresión regular que se me ocurrió:

^[A-TV-Z][0-9][A-Z0-9](\.[A-Z0-9]{1,4})?$ 

Nota Estas expresiones regulares son para javascript y pueden necesitar ajustado para C# (soy demasiado perezoso para probarlo ahora mismo)

+0

Gracias! esta es una mejor respuesta que la aceptada ya que incluye códigos E y códigos V. Lo único molesto es que esta forma de gobierno estadounidense para la que estoy escribiendo un programa requiere el '.' después de los primeros tres números, ¡tan cojo! –

+1

Técnicamente, el carácter "U" es válido. Ha sido reservado para uso futuro de la OMS, pero es un personaje válido. [Referencia] (http://www.cihi.ca/CIHI-ext-portal/internet/en/document/standards+and+data+submission/standards/classification+and+coding/codingclass_icd10struct) –

+0

de acuerdo con el enlace que tener para ICD-9 la expresión regular correcta es '^ ([V \ d] \ d {2} (\. \ d {1,2})? | E \ d {3} (\. \ d)? | \ d {2} (\. \ d {1,2})?) $ 'porque en la última sección él dice' Tenga en cuenta que los códigos del procedimiento ICD-9 * son diferentes una vez más - estos mueven el decimal * up * a colocar. – abc123

10

Un código ICD-9 se ve así:

  • dos/código numérico de tres dígitos (pueden tener ceros a la izquierda para rellenar a tres dígitos)
  • un punto opcional
  • si ese punto es presente, habrá uno o dos dígitos siguientes, dependiendo de los tres dígitos anteriores. Los dígitos permitidos específicamente son muy variables.
  • Algunos códigos llevan el prefijo E o V.

Un ICD-10 código es el siguiente:

  • una carta ASCII en mayúsculas (AZ)
  • dos dígitos
  • un punto opcional
  • si ese punto está presente, no lo hará ser uno o dos dígitos siguientes. Nuevamente, es muy variable qué códigos ICD permiten qué dígitos después del punto.
  • A veces, encontrará un asterisco, un signo más (al menos en los textos ASCII) o un signo de exclamación después de un código. Se usan en ciertos códigos de combinación.

Así que, en esencia, podría usar regex para buscar códigos ICD en un texto, pero no podrá validarlos.

Una C# regex para códigos ICD-9 podría verse así: @"\b[EV]?\d{2,3}(?:\.\d{1,2})?\b".

Para un código ICD-10: @"\b[A-Z]\d{2}(?:\.\d{1,2})?\b[*+!]?"

+0

¿Cuáles son las reglas para los ceros finales? Pensé que había visto códigos de 2 dígitos sin el cero inicial. – mson

+0

Tim es correcto, hay códigos con solo 2 dígitos antes del punto, como 00.12 y 99.75. Estos son solo 2 ejemplos. Hay muchos más. – fooMonster

+0

@fooMonster: Ah, gracias. He editado mi respuesta. –

1

Hay 2 tipos de códigos CIE-9: códigos de diagnóstico & códigos de Procedimiento

para los códigos de diagnóstico Gordon Tucker tiene la respuesta correcta:

^(V\d{2}(\.\d{1,2})?|\d{3}(\.\d{1,2})?|E\d{3}(\.\d)?)$ 

códigos de procedimiento ICD-9-CM son 2 números, un decimal, a continuación, hasta dos números (para ser un código completo se requieren 2 números)

una expresión regular para estos códigos sería:

^\d{2}.\d{1,2}$ 

ICD-9-CM Procedure Codes 2012 ICD-9-CM Diagnosis Codes