Мы можем использовать trimws
(из R 3.6.0
- можно указать whitespace
с пользовательским символом)
trimws(paste('Name',names(l4),sep = '.'), whitespace = "\\.")
#[1] "Name" "Name.l2" "Name.l3"
Или с sub
, чтобы соответствовать .
(.
является метасимволом для любого символа, поэтому мы экранируем \\
, чтобы получить буквальное значение) в конце ($
) строки и заменяем пробелом (""
)
sub("\\.$", "", paste('Name',names(l4),sep = '.'))
Если .
уже есть в names
в конце, мы можем использовать опцию индекса
ifelse(nzchar(names(l4)), paste("Name", names(l4), sep="."), "Name")
#[1] "Name" "Name.l2." "Name.l3"