Diviser la chaîne par délimiteur dans R

Jinku Hu 30 janvier 2023
  1. Utilisez strsplit pour diviser la chaîne par délimiteur dans R
  2. Utilisez str_split pour diviser la chaîne par délimiteur dans R
Diviser la chaîne par délimiteur dans R

Cet article explique comment diviser une chaîne par délimiteur dans R.

Utilisez strsplit pour diviser la chaîne par délimiteur dans R

strsplit est fourni avec la bibliothèque de base R et devrait être disponible sur la plupart des installations sans packages supplémentaires. strsplit divise le vecteur de caractères en sous-chaînes par le délimiteur donné, qui est également fourni avec un vecteur de caractères. Le premier argument de la fonction est le vecteur de caractères à diviser. Dans ce cas, nous spécifions le caractère espace pour séparer chaque mot dans la phrase donnée. Notez que la sortie est donnée sous forme de liste de vecteurs de caractères.

library(dplyr)
library(stringr)

str <- "Lorem Ipsum is simply dummied text of the printing and typesetting industry."

strsplit(str, " ")

Production:

> strsplit(str, " ")
[[1]]
 [1] "Lorem"       "Ipsum"       "is"          "simply"      "dummied"       "text"       
 [7] "of"          "the"         "printing"    "and"         "typesetting" "industry."  

Utilisez str_split pour diviser la chaîne par délimiteur dans R

Alternativement, la fonction str_split peut également être utilisée pour diviser la chaîne par délimiteur. str_split fait partie du package stringr. Cela fonctionne presque de la même manière que strsplit, sauf que str_split prend également des expressions régulières comme motif. Dans l’exemple suivant, nous ne transmettons que la chaîne fixe à rechercher. Notez que la fonction peut éventuellement prendre le troisième argument, qui indique le nombre de sous-chaînes à retourner.

library(dplyr)
library(stringr)

str <- "Lorem Ipsum is simply dummied text of the printing and typesetting industry."

str_split(str, " ")

Production:

> str_split(str, " ")
[[1]]
 [1] "Lorem"       "Ipsum"       "is"          "simply"      "dummied"       "text"       
 [7] "of"          "the"         "printing"    "and"         "typesetting" "industry."  

Un autre paramètre facultatif de la fonction str_split est simplify, qui vient à la quatrième place. Ce paramètre a la valeur FALSE par défaut, ce qui force la fonction à renvoyer des sous-chaînes sous forme de liste de vecteurs de caractères. Si nous affectons TRUE à l’argument donné, str_split renvoie une matrice de caractères.

library(dplyr)
library(stringr)

fruits <- c(
  "apples and oranges and pears and bananas",
  "pineapples and mangos and raspberries"
)

str_split(fruits, " and ")
str_split(fruits, " and ", simplify = TRUE)

Production:

> str_split(fruits, " and ")
[[1]]
[1] "apples"  "oranges" "pears"   "bananas"

[[2]]
[1] "pineapples"  "mangos"      "raspberries"


> str_split(fruits, " and ", simplify = TRUE)
     [,1]         [,2]      [,3]          [,4]     
[1,] "apples"     "oranges" "pears"       "bananas"
[2,] "pineapples" "mangos"  "raspberries" ""
Auteur: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.

LinkedIn Facebook

Article connexe - R String