긴 이야기지만 일부 가짜 HTML을 가져 와서 JavaScript를 사용하여 실제 HTML로 바꾸어야합니다. 예를 들면 : 나는 가능한 모든 요소에 배치 할 수있는 모든 속성을 예상 할 수 없기 때문에이 작업을 수행하는 정규식을 사용하고URL을 제외한 특정 패턴의 RegEx
<span class="text-bold" data="attribute">TITLE</span>
:
{span class:text-bold data:attribute}TITLE{/span}
가로 변경해야합니다. 모든 데이터 인스턴스를 찾기 위해 어느 정도 작동하는 표현식 : 속성 :
/(\w+\:)(.[^\s\}]*)/g
그러나 문제가 있습니다. 이 표현은, 예를 들어, URL을 일치 :
일치에서 모든 URL을 제외하려는 시도에서http://www.google.ca
, 나는 표현과 같이 변경 :
/(?!http)(\w+\:)(.[^\s\}]*)/g
그러나,이 예상되는 영향을 미치지 않았다, 패턴은 선도적 인 'h'없이 URL을 계속 일치시킵니다. 예를 들어,
ttp://www.google.ca
나는 꽤 오랫동안 RegEx를 사용하지 않았다는 것을 인정할 것이다. 그래서 나는 아마 오해하고있을 것이다. RegEx 패턴이 특정 문자 집합으로 시작하는 일치 항목과 일치하지 않는다고 어떻게 말할 수 있습니까?
전체 코드를 추가하십시오 (바꾸기 포함). – Dekel
정규 표현식이 데이터 주변의'{} '와 일치하지 않는 이유는 무엇입니까? 당신의 문제를 해결하지 않겠습니까? – Aaron
'\ w +'=>'\ b \ w +'앞에 단어 경계를 추가하십시오. 또한':'과'}'를 벗어날 필요가 없습니다. –