2013-05-23 2 views
3

나는 "unknown :"을 비롯한 다양한 접두사가있는 문자열이 있습니다. 돼지 스크립트에서 "unknown :"으로 시작하는 모든 문자열을 필터링하고 싶지만 그렇지 않습니다. 작동하는 것처럼 보입니다.돼지 필터가 일치하지 않습니다.

simpleFilter = FILTER records BY NOT(mystr MATCHES '^unknown');

나는 정규식의 몇 가지 다른 순열을 시도했다, 그러나 MATCHES는 그냥 잘 작동하지 않는 것 같습니다. 내가 놓친 게 있니? 돼지 0.9.2

답변

14

를 사용

matches 운영자가 정확하게 자바의 String#matches, 즉 그것은 전체 문자열이 아니라 그것의 한 부분 (귀하의 경우 접두사)와 일치하려고처럼 작동 때문입니다. 그냥과 같이, 사용자가 지정한 접두사로 전체 문자열과 일치하는 정규 표현식을 업데이트 :

simpleFilter = FILTER records BY NOT(mystr MATCHES '^unknown.*'); 
+0

아, 감사합니다. 나는''unknown ** ''을 시도했지만''unknown ''을 잊어 버렸다. – Newtang

관련 문제