Вопрос

I am trying to use [:alnum:] as explained on ?regex

Anyone knows why

grepl("^([a-zA-Z0-9])+([;])", x="dj5sads;adsa")

returns TRUE, but

grepl("^([:alnum:])+([;])", x="dj5sads;adsa")    

returns FALSE?

Это было полезно?

Решение

[:alnum:] is only the name of the class. As you want to put this named class into a character class, you have to enclose it with just another pair of []:

[[:alnum:]]

In your example it'd be

grepl("^([[:alnum:]])+([;])", x="dj5sads;adsa")    
//Output: TRUE

demo @ ideone

Другие советы

what you want is

grepl("^([[:alnum:]])+([;])", x="dj5sads;adsa")    

remember we put the SearchPattern

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top