6

R で、二重引用符の中に二重引用符を入れると、次のようになります。

y <- " " " "

終わります

エラー: "y <- " " " "" の予期しない文字列定数

私の質問は、検出されたすべての二重引用符を削除する方法、またはメインの二重引用符内で単一引用符に変換する方法です。

例えば:

y <- "I'm watching "Prometheus"." 
y

望ましい結果は

#[1] "I'm watching Prometheus."

また

#[1] "I'm watching 'Prometheus'."
4

3 に答える 3

5

ファイルからの文字列入力または何かの標準入力を解析していますか?

scan(what='character',sep='\n')からデータを読み取りstdin()、引用符を自動的にエスケープします。ファイルからの場合も同じ

>scan(what="character",sep="\n",allowEscapes=T)
1: I'm watching "Prometheus"
2: 
Read 1 item
[1] "I'm watching \"Prometheus\""
>
>scan(what="character",sep="\n",allowEscapes=T)
1: "I'm watching "Prometheus""
2: 
Read 1 item
[1] "\"I'm watching \"Prometheus\"\""

入力を取得したら、正規表現を使用して、エスケープされた内部引用符を置き換えることができます... (私は思う! - 複雑な正規表現かもしれません)

于 2012-06-20T10:34:33.990 に答える
4

私はおそらくそれを取得していませんが、

gsub("\"","","I'm watching \"Prometheus\".") 

また

gsub("\"","'","I'm watching \"Prometheus\".") 

?

于 2012-06-20T10:21:46.923 に答える
1
y <-  "I\'m watching 'Prometheus'."

[1] "I'm watching 'Prometheus'."

y <-  "I\'m watching Prometheus."

[1] "I'm watching Prometheus."
于 2012-06-20T13:48:43.797 に答える