A: come verificare se il carattere è in una stringa


È possibile utilizzare i seguenti metodi per verificare se un carattere è presente in una stringa in R:

Metodo 1: controlla se il carattere è in una stringa utilizzando Base R

 grepl(my_character, my_string, fixed= TRUE )

Metodo 2: controlla se il carattere è nella stringa utilizzando il pacchetto stringr

 library (stringr) 

str_detect(my_string, my_character)

Gli esempi seguenti mostrano come utilizzare ciascun metodo nella pratica.

Esempio 1: controlla se il carattere è in una stringa utilizzando Base R

Il codice seguente mostra come verificare se “Doug” esiste in una particolare stringa in R:

 #define character to look for
my_character <- "Doug"

#define string
my_string <- "Hey my name is Douglas"

#check if "Doug" is in string
grepl(my_character, my_string, fixed= TRUE )

[1] TRUE

Poiché “Doug” esiste nella stringa, la funzione grepl() restituisce TRU E .

Supponiamo invece di verificare se “Steve” esiste nella stringa:

 #define character to look for
my_character <- "Steve"

#define string
my_string <- "Hey my name is Douglas"

#check if "Steve" is in string
grepl(my_character, my_string, fixed= TRUE )

[1] FALSE

Poiché “Steve” non esiste nella stringa, la funzione grepl() restituisce FALSE .

Esempio 2: controlla se il carattere è in una stringa utilizzando il pacchetto stringr

Il codice seguente mostra come utilizzare la funzione str_detect() del pacchetto stringr per verificare se la stringa “Doug” esiste in una stringa particolare:

 library (stringr)

#define character to look for
my_character <- "Doug"

#define string
my_string <- "Hey my name is Douglas"

#check if "Doug" is in string
str_detect(my_string, my_character)

[1] TRUE

La funzione str_detect() restituisce TRUE poiché “Doug” è nella stringa.

Tieni presente che possiamo anche utilizzare la seguente sintassi per verificare se nella stringa sono presenti più caratteri:

 library (stringr)

#define vector of characters to look for
my_characters <- c("Doug", "Steve", "name", "He")

#define string 
my_string <- "Hey my name is Douglas"

#check if each character is in string
str_detect(my_string, my_characters)

[1] TRUE FALSE TRUE TRUE

Dal risultato possiamo vedere:

  • “Doug” esiste nella catena.
  • “Steve” non esiste nel canale.
  • “nome” esiste nella stringa.
  • “It” esiste nella stringa.

Correlato: Come utilizzare la funzione str_detect() in R (3 esempi)

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre attività comuni in R:

Come rimuovere l’ultimo carattere dalla stringa in R
Come trovare la posizione del carattere in una stringa in R
Come selezionare colonne contenenti una stringa specifica in R

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *