先谢谢你的帮助......我有以下格式的信息小组:
ACMH ADMIT TO XXX
ACSU ADMIT TO XXX SUB-ACUTE (TCU)
ADOPT ADOPTION
AMA AGAINST MEDICAL ADVICE
APSY ADMIT TO CMH PSYCHIATRIC UNIT
CANCEL CANCELLED SERVICE
CANCELER CANCELLED ER
CANCELTRI CANCELLED TRIAGE
EXP EXPIRED
我需要将Panel格式化为:
'ACMH','ADMIT TO XXX'
'ACSU','ADMIT TO XXX SUB-ACUTE (TCU)'
'ADOPT','ADOPTION'
'AMA','AGAINST MEDICAL ADVICE'
'APSY','ADMIT TO CMH PSYCHIATRIC UNIT'
'CANCEL','CANCELLED SERVICE'
'CANCELER','CANCELLED ER'
'CANCELTRI','CANCELLED TRIAGE'
'EXP','EXPIRED'
我的同事建议更换RegEx。这是一个合适的策略吗?如果是这样,有人可以为我提供一些如何实现这一目标的指导。
我的RegEx经验非常有限(接近不存在)所以任何解释都是值得赞赏的。
此信息正在插入SQL Server数据库中。我们有一个程序,它将使用单引号读取.csv文件,并且几乎插入到表中。
...即
Insert Into myTable ( CodeValue, Description)
Values ('ACMH', 'ADMIT TO XXX')
我们从来没有得过这样的小组,所以我想知道是否有可能实现。
答案 0 :(得分:2)
您可以替换
^(\S+)\s+(.*?)\s*$
与
'$1','$2'
说明:
^
匹配行的开头(\S+)
匹配非空格字符的非空序列。围绕它的括号将其放入捕获组1 \s+
匹配第一个字段(.*?)
是任意字符序列的非贪婪匹配,括号将匹配放在捕获组2中\s*
匹配行尾的空格。我这样做了,所以他们不会被包含在前面的捕获组中,以删除输入数据中的尾随空格。$
匹配行尾在替换$1
和$2
中,将重新捕获捕获组的内容。