<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />嗨!我即将将多个(现在120+).txt文件导入JMP,但我的一次性字段格式为“hh:mm” 上午” 或者“hh:mm 下午” 上午 和下午 不是AM或PM,因此JMP将其识别为文本。 什么是一种干净的方式将其转换为很好的数字时间HH:MM AM或HH:MM PM?
我在导入时不知道如何替换文本。
有任何想法吗?
我现在要去尝试,但在此之前,我想说“谢谢你,天使!”
昨天我确实通过了脚本指南试图获得答案,并阅读了一些关于REGEX的内容。但是当谈到编写脚本时,我可以跟随代码,但是我无法成功生成代码。当它在我面前时,一切都有意义......
谢谢!
劳拉埃尔曼
这是一种脚本方法,用于查找目录中的所有.txt文件,搜索.am 和下午 并替换它,并在同一目录中写入一个新文件。 它还导入表并保存它。 关于正则表达式有一点点这里 。
您可能希望将修改后的文件保存在单独的目录中,并且可能希望在开始之前将原始文件设置为只读。 可以节省很多钱或以后重新工作。
此代码在一个非常简单的文件上进行了测试,可能需要对您的数据进行一些修改。
这假设没有其他字符串实例.am 或.pm 在其他不应转换的数据中。 如果有。您可能希望对导入的数据表进行后处理。 这有点难,因为我不知道你的列名等。
path = "$desktop/files/";
list = Files In Directory( path );
For( i = 1, i <= N Items( list ), i++,
If( Right( list, 4 ) == ".txt" & Left( list, 8 ) != "MODIFIED",
text = Load Text File( path || list );
text = Regex( text, "a\.m\.", "AM", IGNORECASE, GLOBALREPLACE );
text = Regex( text, "p\.m\.", "PM", IGNORECASE, GLOBALREPLACE );
filename = Save Text File( path || "MODIFIED" || list, text );
dt = Open(
filename,
Import Settings( Labels( 0 ), Column Names Start( 0 ), Data Starts( 1 ), )
);
Close( dt, save( path || Regex( list, "(.*?)\.txt$", "\1.jmp" ) ) );
)
);
