我在数据框“玩家”中有一个名为“播放器”的列。类型是'因素'。 它的价值如下: 1. Afsar Zazai(AFG), 2. Jubair Hossain(BDESH), 3. Salman Farooq(阿联酋), 4. Soumya Sarkar(BDESH), 5. Mohammad Nawaz(3)(PAK), 6. Taijul Islam(BDESH)
如何删除括号内的所有内容,但只有在不是数字时才能删除。因此,清洁后列应该如下所示: 1. Afsar Zazai, 2. Jubair Hossain, 3. Salman Farooq, 4. Soumya Sarkar, 5. Mohammad Nawaz(3), 6.泰晤士伊斯兰教
答案 0 :(得分:2)
我们可以做到
sub("(.*)\\([^0-9]+\\)", "\\1", str1)
答案 1 :(得分:1)
Akrun的方法是创建两个组并提取第一个组。以下方法替换找到的字符串。删除字符串末尾的空格是使用trimws
函数完成的。
x <- c("Afsar Zazai (AFG)", "Jubair Hossain (BDESH)", "Salman Farooq (UAE)", "Soumya Sarkar (BDESH)",
"Mohammad Nawaz (3) (PAK)", "Taijul Islam (BDESH)")
trimws(gsub("\\([[:upper:]]+\\)", "", x))
[1] "Afsar Zazai" "Jubair Hossain" "Salman Farooq"
[4] "Soumya Sarkar" "Mohammad Nawaz (3)" "Taijul Islam"