Where(Contains()) 선택나는 종종 Select Where() 함수 안에 Contains() 함수가 편리할 수 있다는 것을 알게 된다. 지정된 열 뒤에 숫자가 올 때 문자열 "a"가 포함된 모든 행을 선택하려면 어떻게 해야 합니까? 예를 들어 값이 "a", "a12" 및 "absent"인 열에서 "a12"가 있는 행만 선택됩니다. 팁을 주셔서 감사합니다!
Re: Where(Contains()) 선택좋은 깨끗한 솔루션 마크.그 정규 표현식을 좋아해야합니다.:Text 뒤에 []가 있는 이유가 궁금합니다.그것 없이 작동하는 것 같습니다.
BTW 이것도 작동합니다.
dt << Select Where(
Regex( :Text, "a\d+" ) == :Text
);
Re: Where(Contains()) 선택다른 옵션:
Names Default to Here( 1 );
dt = New Table( "Select by Criterion",
New Column( "Text", Character, Values( { "a", "a12", "absent" } ) )
);
dt << Select Where(
Not( Is Missing( Regex( :Text[], "a\d+" ) ) )
);Re: Where(Contains()) 선택이것은 숫자가 문자 "a"의 첫 번째 등장 이후에만 있는 경우에 작동합니다.
dt << select where(contains(:name,"a") &
IsMissing(num(substr(:name,contains(:name,"a")+1,1)))==0);