구분 된 열에서 목록의 값을 검색합니다.<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />안녕 JMP 여러분,
나는 자주 사용한다. ~을 포함하다 목록의 모든 값에 대해 열을 검색합니다. 이 같은:
match_list = { "AAA" , "CCC" } ;
싱글 _ 로우 = dt << 행을 가져오다. ( ~을 포함하다 ( match_list , : 단일 값 )) ;
이것은 단일 값을 포함하는 열을 검색하는 매우 편리한 방법입니다. 그러나 여러 번 구분 기호 (일반적으로 세미콜론)로 구분 된 여러 값이 열에 포함 된 유사한 검색을 수행해야합니다.

내 질문 : 위에서 설명한 방법과 비슷한 방식으로 구분 된 값의 열을 검색하는 매끄러운 방법이 있습니까? 정규 표현식을 사용하여 다중 값 열에서 단일 값을 검색 할 수 있습니다. 그러나 목록에 포함 된 많은 값에 대해 다중 값 열을 검색해야합니다.
위의 테이블을 생성하고 단일 값 열에 contains 메서드를 보여주는 코드가 있습니다.
dt = 새 테이블 ( "Searchtbl" , 행 추가 ( 6 ) ,
새 열 ( "단일 값" , 캐릭터 , 명사 같은 ,
값 설정 ( { "AAA" , "BBB" , "CCC" , "DDD" , "EEE" , "FFF" } ) ) ,
새 열 ( "구분 된 값" , 캐릭터 , 명사 같은 ,
값 설정 ( { "AAA" , "AAA, BBB, CCC, DDD, EEE" , "BBB, CCC, DDD" , "BBB, DDD, EEE, AAA" ,
"BBB, EEE" , "FFF; BBB" } )
)
) ;
match_list = { "AAA" , "CCC" } ;
싱글 _ 로우 = dt << 행을 가져오다. ( ~을 포함하다 ( match_list , : 단일 값 )) ;
목록의 값에 대해 구분 된 열을 검색합니다.만약 당신이 nitems가 없다면, 나는 << where rows ()가 부울을 찾고 그 대신에리스트를 얻을 것이라고 생각한다. nitems를 사용하면 교차로가 없으면 목록에 아무 것도 없으므로 false가됩니다.
목록의 값에 대해 구분 된 열을 검색합니다.멋진 와우 빈스. 나는 그것으로 땜질하고 MS에 의하여이 포스트에서 무겁게 빌리는 기능으로 생각났다 : 제목 : Re : 신속한 두 목록 (드문 요소)를 비교하는 방법?
다음은 몇 가지 샘플 코드입니다. 당신은 [row ()] 구조체가 필요 없다는 것을 알았습니다. 그런데 왜 니 넴이 필요한가요?
list_intersect = 기능 ( // list_1의 항목이 list_2에 있는지 확인합니다.
{ list_1 , list_2 } ,
{ 기본 지역 } ,
intersect_list = 연관 배열 ( list_1 ) << 교차하다 ( 연관 배열 ( list_2 ) ) << getkeys ;
) ;
목록 1 = { "사과" , "배" , "주황색" , "키위" , "수박" , "망고" , "레몬" , "보스 배" } ;
목록 2 = { "사과" , "배" , "키위" , "주황색" , "딸기" , "수박" , "멜론" } ;
dt = 새 테이블 ( "임시 직원" ,
새 열 ( "과일" , 캐릭터 , 세트 값 ( 목록 1 || 목록 2 ) )
) ;
list1_rows = dt << 어디에서든 행 가져 오기 ( 니 넴스 ( list_intersect ( 말 ( : 과일 , ";" ) , 목록 1 )))) ;
list2_rows = dt << 어디에서든 행 가져 오기 ( 니 넴스 ( list_intersect ( 말 ( : 과일 , ";" ) , 목록 2 )))) ;
목록의 값에 대해 구분 된 열을 검색합니다.나는 그것을하기위한 함수를 만들어야 만했다. 그러나 이것은 작동하는 것처럼 보입니다.
list_doge = 기능 ( // list_1의 항목이 list_2에 있는지 확인합니다.
{list_1, list_2}, {DEFAULT LOCAL},
aa1 = 연관 배열 (list_1);
aa2 = 연관 배열 (list_2);
aa1 << 교차하다 (aa2);
aa1 << 열쇠를 얻다 ;
);
dt << 어디에서든 행 가져 오기 ( 니 넴스 (list_doge ( 말 (: 구분 된 값 [ 열 ()], ";" ), match_list))))