2016-08-04 40 views
0

我正在使用Notepad ++ v6.9.2。我需要找到ICD9代码将采取以下形式:查找(ICD9代码)并将括号替换为|

  • (X##.)(X##.#)(X##.##)其中X是一个字母,总是在开始和#是一个数字
  • (##.)(##.#)(##.##)(###.)(###.#)(###.##)(###.###)#其中是一个数字

|)替换第一个(,用第二个|替换第二个单独空间。

(305.11) TOBACCO ABUSE-CONTINUOUS 

变为:

|305.11|TOBACCO ABUSE-CONTINUOUS 

其他注意事项:

有其他地方用括号,但只包含字母。那些不需要改变。一些例子:

UE (Major) Amputation 
(282.45) THALASSEMIA (ALPHA) 
(284.87) RED CELL APLASIA (W/THYMOMA) 
Pain (non-headache) (338.3) Neoplasm related pain (acute) (chronic) 

变为

UE (Major) Amputation 
|282.45|THALASSEMIA (ALPHA) 
|284.87|RED CELL APLASIA (W/THYMOMA) 
Pain (non-headache) |338.3|Neoplasm related pain (acute) (chronic) 
+0

看看这里:http://stackoverflow.com/editing-help –

回答

0

您可以使用正则表达式这样的匹配ICD9代码:

[EV]\d+\.?\d* 

这涵盖Ë和V代码和情况下.是省略(根据我的经验,这并不罕见)。使用此正则表达式匹配文本你所需要的部分:

\(([EV]?\d+\.?\d*)\)\s? 

外括号逃到匹配字面()字符,括号内创建一个组进行更换(\1)。末尾的\s?将在圆括号后面捕获可选空间。

所以你的记事本+更换窗口应该是这样的:

Notepad++ replace

+0

这完美的作品。感谢您对正则表达式的回答和教训。 – G83

+0

此外,在Notepad ++中的文件转换后,我将文本文件导入到excel中。为了强制ICD9代码为文本而不是数字,这会丢失信息,我将替换语句更改为:|'\ 1 \ – G83

+0

@ G83有意义。很高兴它解决了。 –