【问题描述】比如有100个DGN文件,需要把这些文件中的“Old”文字全部替换为“New”。使用MicroStation提供的批处理(Batch Process)工具配合对应的键入命令即可轻松实现。【操作方法】CE版中,如下截图,右上角的检索框中输入‘批处理’ (英文版则输入Batch Process)然后点击任意查询结果,即可打开此工具。*注:MicroStation V8i或XM版本中,需要从主菜单Utilities下选择Batch Process按钮
如下标记部分所示:1.首先添加待处理文件,添加成功后就会在下方的列表里显示。2.再选择一个TXT格式的Command File,这个文本文件里包含文字替换的命令。(关于Command file的书写内容,请参考下面Command File的内容)3.最后点击执行按钮,会额外弹出执行列表,当中点击执行按钮,程序就会对列表中每个文件执行一次command file,即实现批量替换文字。
【Command File】
对于MicroStation CE版本和V8i版本,请在TXT文件中使用下列命令:MDL LOAD FINDREPLACETEXT FIND DIALOG SEARCHSTRING Old FIND DIALOG REPLACESTRING New CHANGE TEXT ALL FILEDESIGN
MDL LOAD FINDREPLACETEXT FIND DIALOG SEARCHSTRING Old FIND DIALOG REPLACESTRING New CHANGE TEXT ALL FILEDESIGN
对于MicroStation XM版本,请在TXT文件中使用下列命令:
MDL KEYIN FINDREPLACETEXT CHANGE DIALOGTEXT VBA EXECUTE SetCExpressionValue "s_changeTextInfo.oldString", "old", "FINDREPLACETEXT" VBA EXECUTE SetCExpressionValue "s_changeTextInfo.newString", "new", "FINDREPLACETEXT" CHANGE TEXT ALL FILEDESIGN
补充:正则表达式在替换数字中的命令写法
需求举例说明:用0.5xxx 替换小于0.5的所有值。比如,0.0123、0.1234、0.2345要分别被替换成0.5123、0.5234、0.5345,大于0.5的值则不做替换。TXT文件中使用的命令为:(CE和V8i版本)
MDL LOAD FINDREPLACETEXT FIND DIALOG REGEX True FIND DIALOG SEARCHSTRING ^0\.[0-4] FIND DIALOG REPLACESTRING 0.5 CHANGE TEXT ALL FILEDESIGN