32_zh-CN
脚本编写:如何从带引号的字符串中获取 Name 对象?假设我有一个表变量的名称作为运行时变量中的带引号的字符串。 如何从中获取表变量 Name 对象?
我对表列也遇到了同样的问题,我可以通过获取表列名称列表并迭代它们直到找到与字符串匹配的名称对象来解决这个问题。 不幸的是,似乎没有返回表变量的函数,因此此方法不起作用。
背景:
这样做的目的是拥有一个可重用的库,可以将公式嵌入到列中。 由于重用代码不知道表变量名称或列名称,因此我需要将它们作为字符串参数传递给我的函数。 但是,如果我在构建公式时使用字符串变量,则结果是带引号的字符串,而不是对列或表变量的引用。回复:脚本:如何从带引号的字符串中获取 Name 对象?您可以使用以下命令从字符串中获取表变量的值
x = 当前数据表() << 获取表变量( "teacher" );
你可以通过以下方式获取列的值
x = 列("高度")[ 1 ];
表达式可用于更复杂的元编程(操作 JSL 的 JSL),但由于您是从字符串开始,所以最好使用 Parse() 和 Eval()。例如,以下代码采用函数名称字符串并将其视为函数名称。
s =“开方”; x = Eval( 解析( s || "(2)" ));回复:脚本编写:如何从带引号的字符串中获取 Name 对象?Parse() 正是我需要的命令。要是我一周前就知道就好了!:)
谢谢!
编辑:我话说早了。如果表格变量名包含括号,Parse() 函数就无法正常工作。(例如,“Width (mm)”)我得再仔细想想……
消息由 DaveS 编辑回复:脚本编写:如何从带引号的字符串中获取 Name 对象?我找到了一个可行的办法:
-----------------------------脚本开始-----------------------------
清除全局变量();
清除日志();
MyParse = 函数(
{sName},{默认本地},
ex = "名称(xxx)";
newStr = "\!"" || sName || "\!"";
retVal = Munger(ex, 0, "xxx", newStr);
retVal = Parse(retVal);
);
str = "宽度(毫米)";
name = MyParse(str);
显示(名称);
-----------------------------脚本结束-----------------------------
显然,这仅限于解析名称字符串。谢谢你的帮助!
Comments
There are no comments yet