2011-11-23 3 views
0

클립 보드에서 검색 문자열을 가져와 웹 페이지의 구문을 강조 표시하는 js 파일을 개발 중입니다.
여기에 ms 단어의 텍스트를 복사하여 복사합니다. 그리고 .. 클립 보드 텍스트에서 서식 단어를 정리하는 정규 표현식 아래웹 페이지에서 구문을 검색하기위한 코드 작성에 도움이 필요합니다.

var pure = impure.replace(/“/g, "\""); 
    pure = pure.replace(/”/g, "\""); 
    pure = pure.replace(/’/g, "\'"); 
    pure = pure.replace(/‘/g, "\'"); 
    pure = pure.replace(/–/g, "\-"); 

을 사용하고 나서 개별 단어를 찾을 수 있어요이 몇 가지 다음과 같은 방법

var body = $('body'); 
    var replaced = body.html().replace(''+pure+'','<span class="highlight">'+pure+'</span>'); 
    $("body").html(replaced); 

와 문구를 검색하고 작은 문장 ..하지만 한 번에 전체 구를 찾을 수 없습니다 ... 예를 들어 this 바이올린 (이것은 IE에서만 작동, 내가 IE를 대상으로하고 있기 때문에).

나에게 더 이상 진행 할 수있는 좋은 방법을 제안 해주세요 .. 은 여기 내 말씀은 수도 난 당신이했다 정확한 버그가 있었다 무엇 확실하지 않다 글 머리 기호, 개행, Bolds, 기울임 등 ...

+0

** 총 단어 **의 의미는 무엇입니까? 당신은 효과가 있고 그렇지 않은 예제를 줄 수 있습니까? – steveyang

+0

주어진 바이올린을 한번보세요. – Exception

+0

바이올린이 작동하지 않습니다. 'shortcut'이 정의되지 않았습니다. ' – lalibi

답변

1

을 포함 의심의 여지가 있지만 귀하의 스크립트에서 내 자신의 버그를 발견했습니다. 나는 여기에 고정 : 당신이 순수와 impure을 교체 했어야처럼

var replaced = body.text().replace(
    '' + pure + '', 
    '<div class="highlight">' + pure + '</div>' 
); 

것 같습니다 : 문제의 http://jsfiddle.net/F7txy/6/

하나는 다시 pure으로 pure 텍스트를 대체하기 위해 시도 할 것으로 보이는 것입니다 :

var replaced = body.text().replace(
    '' + impure + '', 
    '<div class="highlight">' + pure + '</div>' 
); 

또한, 당신은 (내가 당신을 위해 한) 함께 replace 방법을 체인 수 있습니다. 또한 을 모두 하나로 결합 할 수 있지만 그렇게하도록하겠습니다.

관련 문제