【发布时间】:2014-07-15 15:28:52
【问题描述】:
我之前问过一个类似的问题,但这个问题要具体得多,并且需要与之前提供的解决方案不同的解决方案,所以我希望可以发布它。我只需要在文本中保留撇号和字内破折号(删除所有其他标点符号)。比如我想从str1中获取str2:
str1<-"I'm dash before word -word, dash &%$,. in-between word, two before word --word just dashes ------, between words word - word"
str2<-"I'm dash before word word dash in-between word two before word word just dashes between words word word"
到目前为止我的解决方案,首先删除单词之间的破折号:gsub(" - ", " ", str1)
然后留下字母和数字字符以及剩余的破折号gsub("[^[:alnum:]['-]", " ", str1)
问题是,它不会删除彼此跟随的破折号,例如“--”在单词的开头和结尾加上破折号:“-word”或“word--”
【问题讨论】: