<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />こんにちは!私はJMPに複数(今のところ120+)の.txtファイルをインポートしようとしていますが、私の1回限りのフィールドは "hh:mm"という形式です。 am」 または "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" ) ) );
)
);
