特定の刺し傷を抽出するやあ、
行からビンの値を抽出し、リストに保存したいと考えています。
例えば-
BIN = "B" 8 "Bad Bump" -> 文字列から文字 "B" を抽出してリストに格納したい
BIN = "P" 6153 "PCM" -> 文字列から文字 "P" を抽出してリストに保存し、bin を含むすべての行についても同様に保存したい
これが私がこれまでに試したことです。 行13のみを抽出します
Names Default To Here( 1 );
Clear Globals();
Clear Log();
dt = current data table();
asa = dt << Get Rows Where (Contains(as column(3), "BIN") & Contains(as column(3), "NULL") == 0);
binlist = {};
startrownumber= asa[1];
for(k =1, k<= Nitems(asa), k++,
Insertinto(binlist, db_test:Bins[asa])
);
binvaluelist= {};
for (i = startrownumber, i <= nitems(asa), i++,
newlist = dt:Bins[i];
word_list = words(newlist, "\!"\!"");
insertinto(binvaluelist, word_list);
);
スクリプティングRe: 特定の文字列を抽出するこれがからのテキスト解析に関連している場合テキスト ファイルから x と y の値を jmp テーブルにインポートし、ウェーハ マップを作成します。私は別のアプローチを使用します。 しかし、既存のデータ テーブルから始めると仮定しましょう。
パターンが常に同じままである場合、正規表現を使用する可能性が最も高いです。
Names Default To Here(1);
dt = Open("$DOWNLOADS/Bin table.jmp");
bins = {};
bin_rgx = "\[(?:BIN = \")(.*)(?:\" \d*)]\";
For Each Row(dt,
If(Starts With(:Bins, "BIN = "),
bin_str = Regex(:Bins, bin_rgx, "\1");
Insert Into(bins, bin_str);
);
);
show(bins); // bins = {".", "1", "2", "B", "P", "N", "A", "3", "F"};Re: 特定の文字列を抽出するありがとうヤルモ。 できます
Re: 特定の文字列を抽出する@jthi
別のウェーハで試してみましたが、一部のビンでは機能しません
ビン = 4
BIN = "A" 2 "Alignment_Die"
ビン = "C" 28615 "D1QM1804101"
ビン = "D" 23501 "D1QM1804102"
BIN = "F" 0 "失敗" ""
BIN = "N" 0 "未テスト"
BIN = "P" 2806 "PCM 死ぬ" ""
bins = {"A", "C", "D", "F\!" 0 \!"失敗"、"N"、"P\!" 2806 \!"PCM ダイ"};
dt = current data table();
bins = {};
bin_rgx = "\[(?:BIN = \")(.*)(?:\" \d*)]\";
For Each Row(dt,
If(Starts With(:Bins, "BIN = "),
bin_str = Regex(:Bins, bin_rgx, "\1");
Insert Into(bins, bin_str);
);
);
show(bins); // bins = {"A", "C", "D", "F\!" 0 \!"Fail", "N", "P\!" 2806 \!"PCM die"};
Re: 特定の文字列を抽出するJMPまたはで正規表現をテストすることをお勧めしますhttps://regex101.com/r/DPngn1/1 . 失敗した文字列を 1 つ選択し、それをテストして、失敗する方法と理由を確認します。 この場合、正規表現パターンは一致しすぎることがあるため、わずかな変更が必要です。