首页 > 解决方案 > 如何计算r中字符串中的段数?

问题描述

我有一个这样打印出来的字符串:

"\"Jenna and Alex were making cupcakes.\", \"Jenna asked Alex whether all were ready to be frosted.\", \"Alex said that\", \" some of them \", \"were.\", \"He added\", \"that\", \"the rest\", \"would be\", \"ready\", \"soon.\", \"\""

(“\”不存在。R 只是自动将其打印出来。)

我想计算这个字符串中有多少个非空段。在这种情况下,答案应该是 11。

我试图将其转换为向量,但 R 忽略了引号,所以我最终还是得到了一个长度为 1 的向量。

我不知道我是否需要先提取这些段然后计数,或者有更简单的方法可以做到这一点。

如果是前一种情况,哪个正则表达式函数最适合我的需要?

非常感谢。

标签: rregexstringcount

解决方案


您可以使用scan将大字符串转换为单个向量,然后用于nchar计算长度。假设您的大字符串是x

y <- scan(text=x, what="character", sep=",", strip.white=TRUE)
Read 12 items
sum(nchar(y)>0)
[1] 11

推荐阅读