Нет никакой разницы между одиночными и двойными кавычками в JavaScript.
Спецификация важна:
Возможно, существуют различия в производительности, но они абсолютно минимальны и могут меняться каждый день в соответствии с реализация браузеров. Дальнейшее обсуждение бесполезно, если ваше приложение JavaScript не имеет сотни тысяч.
Это как контрольный показатель, если
a=b;
быстрее, чем
a = b;
( дополнительные пробелы)
сегодня, в конкретном браузере и платформе и т. д.
Я думаю, это то, что вы ищете. Разделите пробел, а затем замените либо #, либо / 0 пробелом, если я не понял неправильно.
data %>%
separate(Item, into = c("Item", "Size"), sep = " ") %>%
mutate(Size = gsub("/0|#", "", Size))
Чтобы ответить на ваш вопрос | Оператор позволяет выбрать несколько разделителей.
data %>%
separate(Item, into = c("Item", "Size"), sep = " #| ")
Или вы можете использовать общий символ "", чтобы разделить все, а затем очистить столбец после:
data %>%
separate(Item, into = c("Item", "Size"), sep = " ")
См. https: //stringr.tidyverse. org / Articles / Regular-Expressions.html для получения дополнительной информации регулярных выражений, чтобы помочь вашей очистки. Если это неопрятный текст, который вы полюбите и вам понадобится stringR
Поскольку Size
имеет шаблон < #
и цифру> или цифру после пробела, это переходит к аргументу sep
.
" #(?=[0-9])"
находит шаблон, например " #1"
" [0-9]"
находит шаблон, например " 1"
|
означает или [119 ] В сумме, ( Предполагая, что эти виды шаблонов не встречаются в имени элемента )
library(tidyverse)
x <- paste(sort(rep(LETTERS[1:4], 3)), paste0(rep("#", 3), rep(11:13, 3)))
y <- paste(sort(rep(LETTERS[1:4], 2)), paste0(rep(1:2, 2), rep("/0", 2)))
mydf <- data_frame(Item = c(x, y))
#---------------------------------
mydf %>%
separate(Item, into = c("Item", "Size"), sep = " #(?=[0-9])| (?=[0-9])")
#> # A tibble: 20 x 2
#> Item Size
#> <chr> <chr>
#> 1 A 11
#> 2 A 12
#> 3 A 13
#> 4 B 11
#> 5 B 12
#> 6 B 13
#> 7 C 11
#> 8 C 12
#> 9 C 13
#> 10 D 11
#> 11 D 12
#> 12 D 13
#> 13 A 1/0
#> 14 A 2/0
#> 15 B 1/0
#> 16 B 2/0
#> 17 C 1/0
#> 18 C 2/0
#> 19 D 1/0
#> 20 D 2/0