用引号绑定字符串
Bind strings with quotation
我正在将一些代码作为字符串发送到 R.net 包装器。如果里面没有任何引号,用@
就简单了
engine.Evaluate(@"remove_outliersabove <- function(x, na.rm = TRUE, ...) {
qnt <- quantile(x, probs=c(.25, .75), na.rm = na.rm, ...);
H <- 1.5 * IQR(x, na.rm = na.rm);
y <- x;
y[x > (qnt[2] + H)] <- NA;
y;
}");
但是如果我在里面有 "" 那么事情就会变得复杂,我需要像这样剪切和连接字符串
engine.Evaluate("for (k in 1:length(dates))" +
"{ " +
"tmp <- grep(dates[[k]],as.Date(data$timestamp, format=\"%d/%m/%Y\"))" +
"if (length(tmp)!=96)" +
"{ " +
"to_remove[[it]]=k it=it+1" +
"}" +
"}");
还有更好的选择吗?例如使用 @ 然后以某种方式标记引号?
string.Format("{0} bla bla {1}",string1,string2)
怎么样?它会让它看起来更整洁吗?
当您使用 @"..."
时,您可以将 "
字符加倍转义为 ""
。所以
string str = "hello ""world""!";
是
hello "world"!
我正在将一些代码作为字符串发送到 R.net 包装器。如果里面没有任何引号,用@
就简单了 engine.Evaluate(@"remove_outliersabove <- function(x, na.rm = TRUE, ...) {
qnt <- quantile(x, probs=c(.25, .75), na.rm = na.rm, ...);
H <- 1.5 * IQR(x, na.rm = na.rm);
y <- x;
y[x > (qnt[2] + H)] <- NA;
y;
}");
但是如果我在里面有 "" 那么事情就会变得复杂,我需要像这样剪切和连接字符串
engine.Evaluate("for (k in 1:length(dates))" +
"{ " +
"tmp <- grep(dates[[k]],as.Date(data$timestamp, format=\"%d/%m/%Y\"))" +
"if (length(tmp)!=96)" +
"{ " +
"to_remove[[it]]=k it=it+1" +
"}" +
"}");
还有更好的选择吗?例如使用 @ 然后以某种方式标记引号?
string.Format("{0} bla bla {1}",string1,string2)
怎么样?它会让它看起来更整洁吗?
当您使用 @"..."
时,您可以将 "
字符加倍转义为 ""
。所以
string str = "hello ""world""!";
是
hello "world"!