尝试使用转义字符作为双引号var=":Name\!"" || initCol || "\!"";
我正在尝试创建一个包含以下内容的字符串变量::Name("0")
我想最终从名为“0”的列中提取数据,这就是为什么我尝试将此字符串存储到变量中。 但是输出给了我: var = ":Name(\!"0)\!"";
看来我的转义字符无法正常工作......但是如果没有转义字符,我根本无法运行我的代码。 有人可以帮忙吗? 是否有更好的方法来索引该列? “initCol”将始终包含一个数字,但它可能并不总是 0,这就是为什么我需要在对列进行索引之前将感兴趣的数字存储在变量中。
谢谢!
回复:尝试使用转义字符作为双引号您不能对列表使用 write,因为它不是字符串。显示包括转义字符。
如果您对列表元素使用 write,您将看到该字符串是正确的。
show(colsname, colsname2);
write("\!n" || colsName[1] || "\!n");
write(colsName2[1]);
从日志中:
colsname = {":Name(\!"0\!")"};
colsname2 = {":Name(\!"0\!")"};
:Name("0")
:Name("0")回复:尝试使用转义字符作为双引号是的,这是正确的。 该字符串是:名称(“0”)。
回复:尝试使用转义字符作为双引号以下是使用 write() 时的结果:
{":名称(\!"0\!")"}
{":名称(\!"0\!")"}
问题是我的列表中“0”旁边包含的“\”。 这个不应该在那里。回复:尝试使用转义字符作为双引号JMP 工作正常。当您使用 show 或 print 时,会显示双引号的转义字符。如果你使用写()相反,您会看到这些值是正确的。
回复:尝试使用转义字符作为双引号我是否需要更改 jmp 中的设置才能使提到的代码正常工作? 我已经尝试了这两种解决方案,并且它们都产生以下输出:
colsName = {":Name(\!"0\!")"};
colsName2 = {":Name(\!"0\!")"};
这是初始代码:
colsName[count] = Eval Insert( "\[:Name("^test^")]\" );
colsName2[count] = ":Name(\!"" || test || "\!")";
Show( colsName );
Show( colsName2 );
colsName 是递增的列名列表。 目前,count 等于 1,并且只有一个值(值 0)试图写入列表的第一个元素,但我似乎无法摆脱转义字符“\!”。
回复:尝试使用转义字符作为双引号您还可以使用特殊转义字符 \[ 和 ]\ 来允许字符串中包含任何字符,包括双引号。我还使用 evalinsert 来使代码看起来更简洁:
initcol = "0";
var2 = evalinsert("\[:Name("^initcol^")]\");
write(var2);
从日志中:
:Name("0")
回复:尝试使用转义字符作为双引号这对我有用
initCol = "0";
var = ":Name(\!"" || initCol || "\!")";