【问题标题】:Regular Expression | REGEX for ICD9 codes正则表达式 | ICD9 代码的正则表达式
【发布时间】:2014-12-02 23:22:06
【问题描述】:

我正在使用 Python 来提取 ICD9 代码。我正在使用下面的正则表达式

icdRegex = recomp('V\d{2}\.\d{1,2}|\d{3}\.\d{1,2}|E\d{3}\.\d')

它捕获类似于 137.98 或 V35.62 的模式

一切正常,除了表达式还将患者体重捕获为 ICD9 代码。

现在我观察到的是,重量几乎总是显示为 ex:110.67 kg 或 kgs 或 lb 或 lbs

如何将 ICD9 与重量分开!?

【问题讨论】:

  • 您可能会使用负前瞻。 See this question
  • 我确实在 stackoverflow 上尝试了大部分内容,但它不起作用。可能是我对正则表达式有点太笨了。
  • 像魅力一样工作!!

标签: python regex


【解决方案1】:

添加一个否定的前瞻断言,如下所示:

(V\d{2}\.\d{1,2}|\d{3}\.\d{1,2}|E\d{3}\.\d)\b(?!\s?(?:lb|kg)s?)

【讨论】:

  • 有些东西不见了...它仍然将脂肪重量捕获为 ICD9 代码
【解决方案2】:

这是 HamZa 对大家的表达:

icdRegex = recomp("\b(?:V\d{2}\.\d{1,2}|\d{3}\.\d{1,2}|E\d{3}\.\d)\b(?!\s*(?:kg|lb)s?\b)")

感谢 HamZa 和 Chapelo 的帮助。 欣赏它。

【讨论】:

  • 伙计们...对于我们写了将近 2 个月的 REGEX,在一个条件下失败了。对于以 0 开头的数字,它正在捕获错误的模式。例如:如果 ICD9 代码为 032.9,则表达式将其返回为 329。对以 0 开头的代码的任何修复!?
  • 进一步细化此线程here
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-12-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多