[英]R: How to split string into pieces
我正在嘗試拆分大量字符串,如下所示:
x = "�\001�\001�\001�\001�\001\002CN�\001\bShandong�\001\004Zibo�\002$ABCDEFGHIJK�\002\aIMG_HAS�\002�\002�\002�\002�\002�\002�\002�\002\02413165537405763268743�\002\001�\002�\002�\002�\003�\003�\003����\005�\003�\003�\003�\003"
分成四塊
'CN', 'Shandong', 'Zibo', 'ABCDEFGHIJK'
我試過了
stringr::str_split(x, '\\00.')
其中 output 是原點x
。 還,
trimws(gsub("�\\00?", "", x, perl = T))
這只會刪除未知字符 �
。
有人可以幫我解決這個問題嗎? 謝謝你這樣做。
您可以嘗試使用str_extract_all
:
stringr::str_extract_all(x, '[A-Za-z_]+')[[1]]
[1] "CN" "Shandong" "Zibo" "ABCDEFGHIJK" "IMG_HAS"
帶底座 R:
regmatches(x, gregexpr('[A-Za-z_]+', x))[[1]]
在這里,我們提取所有帶有大寫、小寫或下划線的單詞。 其他所有內容都被忽略,所以像 �\\00?
最終 output 中沒有。
我們可以使用來自base R
strsplit
strsplit
setdiff(strsplit(x, "[^A-Za-z]+")[[1]], "")
#[1] "CN" "Shandong" "Zibo" "ABCDEFGHIJK" "IMG" "HAS"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.