【发布时间】:2012-11-06 07:52:50
【问题描述】:
我使用了一年,但现在我必须修改小脚本,我是 DXL 的新手。我已经搜索过之前的问题,但我不知道我该怎么做。
我必须开发一个脚本来分析同一正式模块中的所有对象,以从每个“对象文本”中提取由制表符分隔的不同字符串,以写入同一对象的其他不同属性。
正式模块内容已从 Word 导入。这样,普通文本格式被定义为“对象文本”,并且每个标题样式都与给定的级别标题相关联。以这种方式,每个对象都提供有对象标题或对象文本(但不能同时提供两者)。具有对象标题的对象不需要任何进一步的操作。但是对于带有对象文本的对象,我必须从对象文本中提取一些由制表符分隔的属性。
例如,典型的对象文本可能是:
NNNN TEXT/TABLE/OLE OBJECT/ANY OTHER STRING (XXXXXX) (YYYYYY)
应用脚本后应转换为:
Attribute 1: NNNN
Object Text: TEXT/TABLE/OLE OBJECT/ANY OTHER STRING
Attribute 2: XXXXXX
Attribute 3: YYYYYY
我有一个小脚本作为示例,但我整个上午都试图修改它以获得我需要但我做不到:
Object o = current
//bool get_text(Object o) {return o."Object Heading" "" != ""}
string get_text(Object o)
{
if (o."Object Heading" "" != "")
return "Object Heading"
else
return "Object Text"
}
Regexp r_id = regexp "(http://0-9a-z/.+) "
for o in current Module do
{
string texto = o.(get_text(o))
if (r_id text)
{
o."Attribute 1" = textmatch 1
string input = richTextWithOle(o.(get_text(o)))
string output = cutRichText(input, 0, length(textmatch 1))
o.(get_text(o)) = richText(output)
}
}
【问题讨论】:
-
下次请按缩进。
-
@Abhishek Bhatia 感谢您纠正我的信息。对不起。请原谅我,我也是这个网站的新手。
标签: ibm-doors