- 「avd_1xx_2xx_3xx」私はX(文字列)から番号を抽出し、新しい変数でそれらを配置する必要があり
num1を< - 1XX
NUM1 < - 2XX
NUM1 < - 3XX
しかし、私は、例えばそれぞれ数
の桁の数を予測することができない、このxは "avd_1_2_3" 又は "avd_11_21_33" であるかR - エキス数文字列から(特別なソリューション)私はこのX <ような文字列を持っている
解決策を教えていただけますか? ありがとう
- 「avd_1xx_2xx_3xx」私はX(文字列)から番号を抽出し、新しい変数でそれらを配置する必要があり
num1を< - 1XX
NUM1 < - 2XX
NUM1 < - 3XX
しかし、私は、例えばそれぞれ数
の桁の数を予測することができない、このxは "avd_1_2_3" 又は "avd_11_21_33" であるかR - エキス数文字列から(特別なソリューション)私はこのX <ような文字列を持っている
解決策を教えていただけますか? ありがとう
str_extract
からstringr
までを使用できます。複数の一致を抽出するには、str_extract_all
を使用し、長さ1のlist
を返します( 'x'に1つの要素があるため)。 list
要素を抽出するには、[[
、つまり[[1]]
を使用できます。
library(stringr)
str_extract_all(x, "\\d+[a-z]*")[[1]]
#[1] "1xx" "2xx" "3xx"
base R
を用いて同様のオプションがregmatches/gregexpr
regmatches(x, gregexpr("\\d+[a-z]*", x))[[1]]
#[1] "1xx" "2xx" "3xx"
我々は一致パターンは、1つ以上の数字(\\d+
)であるゼロが続く以上の小文字([a-z]*
)であろう。
グローバル環境で複数のオブジェクトを持つのではなく、vector
としておくことをお勧めします。
ありがとう、akrun。それは動作します。 [[1]]がここで何を意味するのか教えていただけますか? –
@YamPakChing投稿を更新しました。あなたの返事をありがとう – akrun