在给定的文本中,如何找到字符串前面的单词数?
例如:"how to format this article? put return between paragraphs'
我希望确定'put return between paragraphs'
从第6个单词开始,或者换句话说,在它之前有5个单词。
或者,是否有一种方法可以在标记化过程中考虑自定义标记,以便我可以将'put return between paragraphs'
视为一个标记,将其余单个单词视为标记?
更新:这与换行没有任何关系。
答案 0 :(得分:0)
如果您只想在五个单词后添加换行符,可以按如下方式使用sub
:
x <- "how to format this article? put return between paragraphs"
sub("^((?:\\S+\\s+){5})", "\\1\n", x)
答案 1 :(得分:0)
假设s
是您上面的字符串,您可以选择
library(stringi)
parts <- unlist(stri_split(s, regex = "[\\?\\.\\!]"))
stri_count(parts[1], regex = " ")+1 # 5
(并且可能概括逻辑)