我有一个标记值类型:script。 我粘贴了一个字符串:
ET-Powersupply OFF
prTimeBefore = '1' :(01,real, 'Time before [ms]' ,'0..100000');//Time before measurement
psDvcName = 'ETPS' :(02,string, 'Device name [str1;str2;...]' ,''); //
psSndCmd = 'ET1_STBY_OFF ; ET1_OUT_OFF' :(04,string, 'Send CmdStr/@cmd [str1;str2;..]' ,''); //CommandString in device-specific Lib or '@direct cmd'
prSndRec = '1' :(05,real, 'snd/rec/both [1/2/3]' ,'1..3');
是否可以在标记值值中自动获取此输出:
prTimeBefore = '1'; psDvcName = 'ETPS'; psDvcName = 'ETPS'; prSndRec = '1'
我知道我应该在'和 = 之后搜索 = 之前的字词以及'<'中的值/强>
但是如何自动解析标记值呢?图片上面的示例:
谢谢你!答案 0 :(得分:0)
有两种方法可以解决这个问题;您可以编写一个EA脚本,也可以构建一个外接程序。后者是更完整的解决方案,但需要更多的工作。
使用脚本方法,您可以创建一个上下文相关脚本来设置标记并使用该脚本而不是常规EA GUI。这种方法并非万无一失,因为您仍然可以绕过脚本并使用EA的常规GUI错误地设置标记值。
使用加载项,您可以使EA做出反应,以便每当有人设置标记时,您可以根据需要进行更正。加载项可以对事件做出反应,而脚本必须由用户调用。
脚本存储在EA项目内,或存储在所有用户都需要配置的MDG技术中。需要在每台客户端计算机上分发和安装加载项。
要创建脚本,请按以下步骤操作:
如果您编写加载项,您将希望它响应EA_OnNotifyContextItemModified事件。检查项目/对象是否属于正确类型(再次,很可能是元素),然后检查其标记并检查是否存在其值为原始种类的“脚本”标记,然后解析它并将其设置为解析了价值。
API在自动化下的帮助文件中记录。对象模型包含脚本和加载项中可用的接口,而加载项模型包含加载项可以响应的事件。