3

Rで別の文字列内の文字列を検索したい.文字列は次のとおりです。a == b文字列 a を文字列 b に一致させたいのですが、出力は TRUE を返すものでなければなりません

a <- "6250;7250;6251"
b <- "7250"
a == b                 #FALSE
4

2 に答える 2

12

regmatchesとを使用できますgregexprが、現時点ではあなたの質問はやや漠然としているため、これがあなたが探しているものであるとは確信が持てません:

> regmatches(a, gregexpr(b, a))
[[1]]
[1] "7250"

> regmatches(a, gregexpr(b, a), invert=TRUE)
[[1]]
[1] "6250;" ";6251"

更新された質問に基づいて、おそらくgrepl.

> grepl(b, a)
[1] TRUE
> grepl(999, a)
[1] FALSE

^^ 基本的には「a の中から b を探す」ということです。

于 2013-09-13T16:49:54.823 に答える
4

725b がの代わりに等しい場合7250、結果を にしたいTRUEですか?

もしそうなら、すでに与えられた答えはうまくいきます(そして、一致するパターンがないのでgrepl、設定することで少しスピードアップできます.fixed=TRUE

TRUE間に何かが完全に一致する場合にのみ必要な場合は、正規表現;に埋め込む必要があります(役立つ場合があります)、またはより単純に、一致する部分だけに分割してから、これらの値のいずれかに一致します。bsprintfstrsplita%in%b

于 2013-09-13T17:44:17.290 に答える