Ниже приведен фрагмент кода, который разбивает большой фрагмент текста, называемый «строками», на несколько строк. Он разделяется всякий раз, когда обнаруживает конечную пунктуацию (например,. Или?), Но исключает все периоды, следующие непосредственно за аббревиатурой, например Mr.
lines<-unlist(strsplit(lines, paste("(?<=(?<!", abbr,")[\\.\\?\\!])[\\s”’]"), perl = T))
Все сокращения сохраняются в векторе, называемом «abbr». «и все они пишутся с большой буквы (г-н, миссис, в отличие от г-н, г-жа). Проблема, с которой я столкнулся в своем коде, заключается в том, что я хочу, чтобы он не учитывал регистр и выявлял аббревиатуры в тексте, которые не были написаны заглавными буквами, и я хочу выполнить sh, не добавляя строчные версии каждой аббревиатуры в вектор abbr.