Класс символов \b
в JavaScript RegEx действительно полезен только при простой кодировке ASCII. \b
- код быстрого доступа для границы между наборами \w
и \W
или \w
и началом или концом строки. Эти наборы символов учитывают только слова ASCII «word», где \w
равно [a-zA-Z0-9_]
, а \W
- отрицание этого класса.
Это делает классы символов RegEx в значительной степени бесполезными для работа с любым реальным языком.
\s
должен работать для того, что вы хотите сделать, при условии, что условия поиска ограничиваются только пробелами.
Также (если имя, которое вы хотите изменить, всегда на втором месте):
lapply(my_list, function(x){
colnames(x)[2] <- gsub(" ","", colnames(x)[2])
x
}
Мы можем использовать rename
после цикла через list
с map
library(tidyverse)
map(lst1, ~ .x %>%
rename(TotalCounts = "Total Counts"))
Решение с основанием R и setNames
:
lapply(mylist,
function(x) setNames(x, replace(names(x), names(x) == "Total Counts", "TotalCounts")))