"JJ NN"
döndürür
sapply(s, function(x){gsub("([a-z].*?)/([A-z].*?)", "\\1", x)})
Ben
"helloJ worldN"
nasıl "merhaba dünya" olsun ve neden orada kayma Etiketin ilk harfi olsun?
"JJ NN"
döndürür
sapply(s, function(x){gsub("([a-z].*?)/([A-z].*?)", "\\1", x)})
Ben
"helloJ worldN"
nasıl "merhaba dünya" olsun ve neden orada kayma Etiketin ilk harfi olsun?
Çıktıda kalan harfleri almanızın sebebi regex'tir. [A-Z]
(olmalı Z
, ben z
bir yazım hatası olduğunu tahmin - [A-Za-z] Shorthand class? bakınız) Tamam, ama mümkün olduğunca az yeni satır dışındaki 0 veya sınırsız karakterlerle eşleşen bir .*?
tembel nokta eşleştirme grubu tarafından takip edilmektedir. Yani, will match none.
+
nicelik 1 veya daha fazla karakter eşleşmesi ve karakter sınıfına [a-zA-Z]
uygulamak gerekir: s <- "hello/JJ world/NN"
sapply(s, function(x){gsub("([a-zA-Z])/[a-zA-Z]+", "\\1", x)})
Kullanmadığınız çünkü
demo Ben ikinci gruba kaldırıldı bakın.
'u deneyin ya da çıktıyı kodun altına kopyalayıp yapıştırabilirsiniz? – rawr
Uzunluğunun bir vektöründe sapply kullanıyorsunuz. neden sadece gsub ('/ [az] +', '', s, ignore.case = TRUE) 've' gsub ('[az] + /', '', s, ignore.case = TRUE) ' ? – rawr
gsub ('/ \\ w +', '', s) ' – akrun