Or와 여러 개의 포함 문장을 사용할 수 있고, Substitute를 사용하여 해당 문자열을 대체하고 길이를 확인하거나 Regex를 사용할 수 있습니다. 다음은 substitute와 regex의 예입니다(substitute가 가장 빠를 가능성이 높음)
Names Default To Here(1);
dt = Open("$DOWNLOADS/sample table.jmp");
dt << select where(Length(:Chart) > Length(Substitute(:Chart, {"Trace thickness", "Trace width", "Insulator thicknes"}, {"", "", ""})));
// dt << select where(!Is Missing(Regex(:Chart, "Trace thickness|Trace width|Insulator thicknes")));
dt_subset = dt << Subset(Selected Rows, Selected Columns Only(0), Output Table("Subset"));
</CODE></P>
<P> </P></LINGO-BODY><LINGO-SUB id="lingo-sub-780361" slang="en-US" mode="CREATE">Re: 다중 문자 선택 및 하위 집합에 포함을 사용하는 방법?</LINGO-SUB><LINGO-BODY id="lingo-body-780361" slang="en-US" mode="CREATE"><P>잘 작동하고 효율성도 높아요. 정말 감사합니다!</P></LINGO-BODY><LINGO-SUB id="lingo-sub-780364" slang="en-US" mode="CREATE">Re: 다중 문자 선택 및 하위 집합에 포함을 사용하는 방법?</LINGO-SUB><LINGO-BODY id="lingo-body-780364" slang="en-US" mode="CREATE"><P>안녕하세요 Jarmo님,</P><P> </P><P>Recode에 대한 추가 질문이 있습니다. 차트로 재코딩하고 이름에 "Trace Thickness" 문자가 있는 경우 모든 문자를 필터링하고 새 이름 "TT"로 재코딩해야 합니다.</P><P>스크립트가 있는데 같은 질문인데, 좋지 않아요. 더 나은 해결책이 있는지 확인하는 데 도움을 주실 수 있나요? 정말 고맙습니다! KRs Sean</P><PRE><CODE class=" language-jsl">Names Default To Here(1);
dt = Open( "$DESKTOP/sample table.jmp" );
dt << select where(Length(:Chart) > Length(Substitute(:Chart, {"Trace thickness", "Trace width", "Insulator thicknes"}, {"", "", ""})));
dt_subset = dt << Subset(Selected Rows, Selected Columns Only(0), Output Table("Subset"));
// Recode column: Category
dt = Data Table( "Subset" );
dt << Begin Data Update;
col1 = dt << New Column( dt:Chart );
col1 << Set Name( "Category" );
dt << Move Selected Columns( {col1}, after( dt:Chart ) );
dt << Recode Column(
dt:Chart,
{Map Value(
_rcOrig,
{"B 1B 110um Trace thickness", "TT", "B 2B 18um Trace thickness", "TT",
"B 2F 15um Trace thickness", "TT", "B 2F 24um Trace thickness,DE D", "TT",
"B 2F 32um Trace thickness,SE6", "TT", "B 3B 90um Trace thickness", "TT",
"B 3F 90um Trace thickness", "TT", "B 4B 18um Trace thickness", "TT",
"B 4F 13um Trace thickness,DE B", "TT", "B 4F 15um Trace thickness", "TT",
"B 4F 18um Trace thickness,DE B", "TT", "B 4F 24um Trace thickness,DE C",
"TT", "B 4F 30um Trace thickness,DE C", "TT",
"B 4F 32um Trace thickness,SE6", "TT", "B 4F 35.5um Trace thickness,SE6",
"TT", "B 4F 41um Trace thickness,SE2", "TT",
"B 4F 44.5um Trace thickness,SE2", "TT", "B 5B 90um Trace thickness", "TT",
"B 5F 90um Trace thickness", "TT", "B 6B 18um Trace thickness", "TT",
"B 6F 13.5um Trace thickness,SE5", "TT", "B 6F 14um Trace thickness", "TT",
"B 6F 15um Trace thickness,SE2 L2", "TT", "B 6F 15um Trace thickness,SE5",
"TT", "B 6F 17um Trace thickness,SE4", "TT", "B 6F 18.5um Trace thickness",
"TT", "B 6F 20um Trace thickness,SE3", "TT", "B 6F 20um Trace thickness,SE4",
"TT", "B 6F 41um Trace thickness,SE2 L1", "TT",
"B 6F 44.5um Trace thickness,SE2 L1", "TT", "B 7B 85um Trace thickness",
"TT", "B 7F 14um Trace thickness", "TT", "B 8B 18um Trace thickness", "TT",
"B 8F 14um Trace thickness", "TT", "B 8F 18um Trace thickness,SE1", "TT",
"B 8F 28.5um Trace thickness,DE A", "TT", "B 8F 30.5um Trace thickness,SE5",
"TT", "B 9B 90um Trace thickness", "TT", "B 9F 14um Trace thickness", "TT"},
Unmatched( _rcNow )
)},
Update Properties( 1 ),
Target Column( col1 )
);
dt << End Data Update;
Recode에서 문자열 바꾸기 기능을 사용할 수 있습니다.


그리고 이 경우에는 작동을 생성할 수도 있는 것 같습니다.
Local({dt, col1},
dt = Data Table("Subset");
dt << Begin Data Update;
col1 = dt << New Column(dt:Chart);
col1 << Set Name("Chart 2");
dt << Move Selected Columns({col1}, after(dt:Chart));
For Each Row(
dt,
col1[] = If(Contains(dt:Chart, "Trace thickness"),
"TT",
dt:Chart
)
);
dt << End Data Update;
);
원하시면 약간 수정하실 수 있습니다.
Names Default To Here(1);
dt = Open( "$DOWNLOADS/sample table.jmp" );
dt << select where(Length(:Chart) > Length(Substitute(:Chart, {"Trace thickness", "Trace width", "Insulator thicknes"}, {"", "", ""})));
dt_subset = dt << Subset(Selected Rows, Selected Columns Only(0), Output Table("Subset"));
dt_subset << Begin Data Update;
For Each Row(
dt_subset,
:Chart = If(Contains(dt:Chart, "Trace thickness"),
"TT",
dt:Chart
)
);
dt_subset << End Data Update;