古いテキスト素材をたくさん処理しています。多くの場合、OCRプロセスは "。"言い換えれば、例えば、「t.h.i.s i.s a test」である。これらのドットを空のスペースに置き換えたいのです。しかし、私は文の終わりを示す点を取り除きたいとは思わない。だから私は、文字/ドット/文字を探して、ドットを何も置き換えない正規表現を探しています。R:文字列内の2文字間のドットを置き換える方法
test <- "t.h.i.s i.s a test."
gsub(test, pattern="\\w[[:punct:]]\\w", replacement="")
しかし、これは結果
". a test."
任意の提案が高く評価されています。
このアプローチは良くありません。「5.6」があればどうなりますか? –
[ここから](http://stackoverflow.com/questions/8747671/regex-remove-all-matches-leaving-the-last): 'gsub(" [\\。](?!\\ d * $ ) "、" "、test、perl = TRUE)'が動作します。正規表現に精通している人が理由を説明できるのでしょうか? (私はできません) –