2

PID で始まる「単語」を見つけるには、大量の文字列を検索する必要があります。PID は ID タグで、すべて番号が付けられています (PID1、PID23 など)。

検索する文字列の例: PID442 WALKS TO TOWN

出力が「PID442」になるように、特定の ID を返す必要があります。私はRでこれをやろうとしていました。

4

3 に答える 3

4
str <- c("PID442 WALKS TO TOWN", "I AM PID1")
gsub(".*\\b(PID\\d+)\\b.*", "\\1", str)
#[1] "PID442" "PID1" 

\\b単語の先頭または末尾に一致する単語境界です

\\d+正の桁数に対応

.*負でない量です

\\1strのすべての要素をに置き換えますPID\\d+。つまり、最初の括弧内にある正規表現の部分です。

于 2013-08-23T00:20:45.433 に答える
4

これを試して:

> library(gsubfn)
> strapply(str, "\\bPID\\d+\\b", c, perl = TRUE, simplify = TRUE)
[1] "PID442" "PID1" 
于 2013-08-23T00:26:26.393 に答える