tmLanguage 파일에서 Ruby의 정규 표현식을 사용할 수 있다는 것을 알고 있지만 다른 구성 파일에서는 그렇지 않습니다. 확장 기능. 예를 들어 language contribution의 firstLine
값을 가져옵니다. 문자 클래스를 사용할 때 오류가 발생합니다 (예 : \s
또는 \p{L}
). 그러므로 나는 실제로 거기에 허용되는 것이 무엇인지 궁금합니다. 거기에 공백을 어떻게 맞추겠습니까?Visual Studio 코드에서 사용되는 정규식 변형은 무엇입니까?
업데이트 : 나는이 시도 코멘트 후 : lexer grammar G1;
하거나 grammar G1;
같은 첫 번째 라인과 일치하도록되어
"firstLine": "^(lexer|parser)?\\s*grammar\\w+;"
. 그렇지 않으면 유효성 검사가 없기 때문에 RE가 작동하는지 테스트 할 수있는 방법이 있습니까?
업데이트 2 :
그것은 올바른 문법을 사용하는 것이 필수적과 마술 작동합니다
"firstLine": "^(lexer|parser)?\\s*grammar\\s*\\w+\\s*;"
당신은 자신의 'firstLine' 값을 보여주지 않았기 때문에'\\ s'와 같이 백 슬래시를 벗어나는 것을 기억하는지 알 수 없습니다. –
아니요, 저는'\ s'를 피하지 않았습니다. 내 tmLanguage 파일에는 필요하지 않았습니다. –
업데이트시 끝나는 세미콜론이 선택 사항입니까? 당신은 그것을 필요로하는 것처럼 보입니다. 파일이 json이므로 백 슬래시를 이스케이프 처리해야합니다 (http://json.org/). –