【发布时间】:2013-05-19 01:38:54
【问题描述】:
我被这个正则表达式卡住了。
所以,我输入如下:
- “起重机装置,(物理对象)”(X1,x2,x4),不是“研究护士看到的(发现)”,EntirePatellaBodyStructure(X1,X8),“Besnoitia wallacei(有机体)”,“Catatropis(有机体) )"(X1,x2,x4), not IntracerebralRouteQualifierValue, "Diospyros virginiana (organism)"(X1,x2,x4), not SuturingOfHandProcedure(X1)
最后我想得到的是:
- “起重机设备,(物理对象)”(X1,x2,x4)
- 不是“研究护士看到的(发现)”
- 整个髌骨结构(X1,X8)
- “Besnoitia wallacei(有机体)”
- “Catatropis(有机体)”(X1,x2,x4)
- 不是 IntracerebralRouteQualifierValue
- “Diospyros virginiana(有机体)”(X1,x2,x4)
- 不是 SuturingOfHandProcedure(X1)
我试过正则表达式
(\'[^\']*\')|(\"[^\"]*\")|([^,]+)|\\s*,\\s*
如果括号内没有逗号,它可以工作。
【问题讨论】:
-
not和()的任何特别之处! -
看起来你想要的是一个完整的解析器,而不是正则表达式。
-
这实际上是 prolog 命令,但在这种情况下“not”不起作用。括号中还有一个变量,但它可以为空。
-
有趣的查询。我想知道柿子与膝盖或手缝有什么关系。 :-)
-
@JasonS 我希望它是重复的。我花了两个多小时试图在这里找到解决方案。我已经考虑过这个问题。