2016-10-26 2 views
3

아포스트로피 (') 또는 앰퍼샌드 (&)를 포함 할 수있는 문자열이 있습니다. 나는 둘 중 하나 또는 둘 다 존재 하는지를 알아야합니다. 만일 그렇게된다면, 나는 위의에 및/또는 조건을 추가하고 단순히 자바 스크립트를 사용하여 대체 할 수 '' 및/또는 '&Javascript 찾기 및 바꾸기 특수 문자

trim(Pos_Query_Super.replace(/'/g,"''")) 

로 교체? 이 개발은 JS 표현식을 사용할 수있는 프로세스 흐름 IDE에 있습니다.

답변

2

예, 당신은 당신의 자신의 HTML 탈출 매핑을하지 마십시오 경기

trim(Pos_Query_Super.replace(/'|&/g,function(match){ 
    return { 
      '\'':'\''', 
      '&':'\'&' 
      }[match] 
})); 
0

에 따라 교체를 반환하는 기능을 사용할 수 있습니다. 대신, 그렇게 DOM 루틴을 사용

function HtmlEscape(str) { 
 
    const s = document.createElement('span'); 
 
    s.textContent = str; 
 
    return s.innerHTML; 
 
} 
 

 
console.log(HtmlEscape("foo'bar&baz<div>Bob</div>"));

당신은이 작은 따옴표를 탈출하지 않습니다 것 - 그렇게 할 이유가 없기 때문입니다.

+0

"이유가 없기 때문에"--- 어떻게 알 수 있습니까? – zerkms

+0

있음을 어떻게 알 수 있습니까? –

+0

나는 잘 모른다 - 나는 OP가 그렇지 않으면 입증 될 때까지 신뢰한다 :-) – zerkms