繁体   English   中英

使用R中的regexpr提取句子

[英]Extract sentences using regexpr in R

从一段文本中,我想用正则表达式提取一个以“Meds:”开头的句子。 我使用的模式是:

    "[:blank:]Meds:[^.]*\\." 

这样我的句子就会在“Meds:”之前开始,然后是更多的单词,并在句号结束时结束。 它没有像我希望的那样工作。

这是发生的事情:

[1] Patient X came with the complain of pain Meds:ASA 81mg PO qd, 
toprol XL 25 mg PO Gen: Healthy appearing, overweight.
  1. 我的输出并没有从“Meds:”这个词开始,而是在它之前的整个句子,并继续到下一个句子,直到它与下一个'句号'相匹配。 所以它看起来像这样:

  2. 我希望它停在'25毫克PO',但我知道它没有这样做,因为它无法在那里找到'期间'。

    任何建议都将受到高度赞赏。

你可以试试这个:

text = 'Patient X came with the complain of pain Meds:ASA 81mg PO qd, toprol XL 25 mg PO Gen: Healthy appearing, overweight.'
gsub(".*(Meds:[^.:]*)\\s+[^:]+:.*" , '\\1', text)
# [1] "Meds:ASA 81mg PO qd, \ntoprol XL 25 mg PO"

这是你可以做到的一种方式:

\sMeds:([^.:]*)\s\w+:

你可以在这里测试一下

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM