문제 : 코드 - 태그의 내용 내에서 특정 키워드 (예 : "function")의 스타일을 지정하려고합니다. C- 스타일 주석의 키워드는 제외됩니다. 그 내용. 솔루션 : 나는 C 스타일의 코멘트를 제외시킬 코드 패턴의 innerHTML 문자열이 정규식과 일치한다고 생각합니다.Javascript Regex - C 스타일의 주석을 제외한 모든 것을 캡쳐
어떤 제안이 있습니까?
문제 : 코드 - 태그의 내용 내에서 특정 키워드 (예 : "function")의 스타일을 지정하려고합니다. C- 스타일 주석의 키워드는 제외됩니다. 그 내용. 솔루션 : 나는 C 스타일의 코멘트를 제외시킬 코드 패턴의 innerHTML 문자열이 정규식과 일치한다고 생각합니다.Javascript Regex - C 스타일의 주석을 제외한 모든 것을 캡쳐
어떤 제안이 있습니까?
C 스타일 주석은 중첩 될 수 있으므로 정규식에 적합하지 않습니다. 중첩되지 C 스타일의 코멘트를 일치
는간단하다 : (RegexBuddy의 라이브러리에서 가져온)
/\*(?:(?!\*/|/\*).)*+(?:/\*(?:(?!\*/|/\*).)*+\*/(?:(?!\*/|/\*).)*+)*+.*?\*/
:
/\*.*?\*/
은에서 중첩 결과의 한 단계를 허용. 당신이 더 많은 것을 허락한다면 어떻게되는지 상상해보십시오.
"정규식이 C 스타일 주석 외부에있는 텍스트 블록과 일치 할 수 있습니까?"라는 질문을 이해합니다. - 이것보다 훨씬 복잡합니다. "This is used to start a C comment: /*"
과 같은 문자열을 상상해보십시오. 더욱이 이것을 시도하고 싶다면 JavaScript가 지원하지 않는 lookbehind가 필요합니다.
기다려 ... 당신은 (내부) HTML을 정규식으로 구문 분석하고 싶습니까? 중요/보안에 중대한 영향을 미치는가? –
http://alexgorbatchev.com/wiki/SyntaxHighlighter를보고 어떻게하는지보십시오. – AutomatedTester