web-dev-qa-db-ja.com

R gsub単一二重引用符

データフレーム内に次のような文字列のフィールドがあります。

"Young Adult – 8-9"" 

ここで、内側のシングル "は、何も取得しないで置き換えたいものです。

"Young Adult - 8-9"

これどうやってするの?私は二重のバックスラッシュで脱出しようとしました:

gsub("\\"", "", string)

しかし、このエラーが発生しました:エラー: "gsub("\""、 ""に予期しない文字列定数があります

10
Oliver Oliver

正規表現で二重引用符をエスケープする必要はありません。 "\""または'"'を使用して、単一の二重引用符を照合します。

s = "Young Adult – 8-9\""
s
[1] "Young Adult – 8-9\""
gsub("\"", "", s)
[1] "Young Adult – 8-9"
gsub('"', "", s)
[1] "Young Adult – 8-9"

参照 このIDEONEデモ

注:一部のliteralテキストを削除するため、正規表現も必要ありません。fixed=TRUE引数を使用して、操作を高速化します。

gsub('"', "", s, fixed=TRUE)
11