1
ParseKit'sTokenization을 SQL Server 구문과 함께 사용하려고합니다. 다음 예를 살펴 경우ParseKit Tokenization 및 DelimitedString 사용
CREATE PROCEDURE [dbo].[test]
@MyId UNIQUEIDENTIFIER
AS
BEGIN
-- something something
END
GO
을 내가 사용 설정 코멘트 (그리고 여러 댓글)에 다음
SQL 주석을 처리하기위한 지원을 설정PKTokenizer *t = [PKTokenizer tokenizerWithString: [inputString substringWithRange: range]];
// SQL does not support // comments.
[t.commentState removeSingleLineStartMarker: @"//"];
// But it does support -- comments.
[t setTokenizerState:t.commentState from: '-' to:'-'];
[t.commentState addSingleLineStartMarker: @"--"];
[t setTokenizerState: t.commentState from: '/' to: '/'];
[t.commentState addMultiLineStartMarker: @"/*" endMarker: @"*/"];
. 이제 @MyId
과 같은 매개 변수를 감지 할 수있는 지원을 추가하려고합니다. 현재 토크 나이저는이를 단어로 선택하지만 문자열 값에 @
을 포함하지 않습니다. 내 생각은 수행하여 delimitState
를 사용하여 시도했다 :
[t.delimitState addStartMarker: @"@" endMarker: @" " allowedCharacterSet: [NSCharacterSet alphanumericCharacterSet]];
그런 다음
token.isDelimitedString
을 확인하지만, 어떤을 선택하지 않는 것 같습니다.
내가 잘못 생각하고 있습니까? 내 단어 상태에 @
을 포함시킬 수있는 방법에 대한 제안이 있으십니까?
최고를 마법처럼 일이! 훌륭한 구성 요소를 가져 주셔서 감사합니다. – Kyle