2010-01-23 2 views
7

String.split (k)를 통해 문자열을 분할하려고합니다. 여기서 k는 임의의 문자열 (intput에서 읽음)입니다. 문제는 k가 임의의 문자열이 될 수 있으므로 정규 표현식 연산자 (예 : "*[")가 포함될 수 있다는 것입니다.Groovy : 임의의 (알 수없는) 정규 표현식 이스케이프

정규 표현식이 올바르지 않기 때문에 split 메소드가 예외를 발생시킵니다.

내가 찾고있는 것은 결과 문자열이 split()에 안전하게 전달 될 수 있도록 모든 주어진 k를 이스케이프하는 방법입니다.

의견이 있으십니까?

답변

8

Pattern.quote()을 사용하면 정규식 패턴을 이스케이프 처리 할 수 ​​있습니다.