grepl一段时间“。”在R?

时间:2013-10-24 15:44:04

标签: r regex grep

假设我有一个字符串"你好。"我想看看这个字符串是否包含句点:

text <- "Hello."
results <- grepl(".", text)

这会将结果返回为TRUE,但如果文本为"Hello"而没有句点,则会返回该结果。

我很困惑,我在文档中找不到任何关于此内容的内容,而且只会在此期间执行此操作。

有什么想法吗?

2 个答案:

答案 0 :(得分:20)

查看与这些示例的差异

 > grepl("\\.", "Hello.")
[1] TRUE
> grepl("\\.", "Hello")
[1] FALSE

.表示SimonO101指出的任何内容,如果您想查找明确的.,则必须使用\\.跳过它,这意味着要查找. 1}}

R文档广泛用于正则表达式,您还可以查看this link以了解点的使用。

答案 1 :(得分:12)

我通常使用Jilber的方法,但这里还有另外两种方法:

> grepl("[.]", "Hello.")
[1] TRUE
> grepl("[.]", "Hello")
[1] FALSE

> grepl(".", "Hello.", fixed = TRUE)
[1] TRUE
> grepl(".", "Hello", fixed = TRUE)
[1] FALSE