2

基本的な質問...文字列があり、以下を使用して文字列から数字を抽出しようとしています。

str2="<P>3.1 Design objectives ..... 
<Link>25 
</Link> </P>"
str2
a<-strapply(str2,"\\d+",as.numeric,simplify=TRUE)
a

これは31、および25これで問題ありません。3.1(分割してもOK )

ただし、文字列に数字がまったくない場合:

pr <- "This is a test string"
b<-strapply(pr,"\\d+",as.numeric,simplify=TRUE)

b 戻り値:

[[1]]
NULL

上記を使用して、文字列内の数値の存在を検出するにはどうすればよいですか?

is.null(b)Falseあるべきように戻った。

length(b)与え1られた、NULLオブジェクトはどれですか?

length(b)では、 が の場合、文字列に数字が含まれていないと言うのは正しい1でしょうか? これを行うよりエレガントな方法はありますか?

4

2 に答える 2

4
require(gsubfn)
pr <- "This is a test string"
b<-strapply(pr,"\\d+",as.numeric,simplify=TRUE)
if( !length(b[[1]]) ){TRUE}
#[1] TRUE

(これは、リスト要素が NULL かどうかをテストする標準的な方法です。)

于 2013-07-13T07:31:14.107 に答える