2

プロパティの平方メートルの数値が実際に何であるかを見つけるために、さまざまなプロパティのテキストcsvファイルをトロールする大量のテキストがあります。例えば:

string <- "This is a wonderful 120 sqm flat with a stunning view"

以下を使用して数値を抽出できることを知っています。

sqm <- as.numeric(gsub("\\D", "", string)) 

'120' の数値ベクトルを返します。ただし、テキストに他の無関係な数値が含まれている可能性があることを考えると、これを達成するためのより洗練された方法があるかどうか疑問に思っていましたか?

「sqm」を検索して、その前の数字を返す方法はありますか? コメントありがとうございます。

4

1 に答える 1

2

この正規表現の先読みが機能するはずだと思います:

library(stringr)
##
string <- "This is a wonderful 120 sqm flat with a stunning view"
re <- "((\\d+)(?=\\s?sqm))"
##
R> str_extract(string, perl(re))
[1] "120"
于 2015-04-29T14:10:43.153 に答える