2014-11-28 5 views
-1

일부 특수 문자열을 상대 스마일로 바꾸는 방법을 찾으려고합니다. <img src="image/path"/> 와 \ ue40a를 교체하고, 주어진 텍스트에 내가 찾을 수있는 방법 <img src="image/path/2"/>주어진 문자로 시작하는 문자열 바꾸기

와 \ UE로 시작 각각의 문자열을 \ ue53c를 교체하고 다음의 세 개의 문자를 가져온 다음으로 교체 예를 들어

img 태그?

도움 주셔서 감사합니다.

+2

는 자바 스크립트 당신은이 문제를 해결하려고 쓴이 있습니까? – PeterKA

+2

정규식은 상당히 간단하지만'/ 경로 '에'40a','/ 경로/2 '로'53c'를 어떻게 매핑해야합니까? – Rhumborl

+0

사용하는 언어 나 서버 아키텍처를 알 수 없기 때문에 [정규식] (http://en.wikipedia.org/wiki/Regular_expression) 또는 즐겨 찾는 텍스트 편집기의 검색 및 바꾸기 기능 만 사용할 것을 권장합니다. 세부 답변을 얻으려면 더 많은 정보를 제공해야합니다. –

답변

2

를 사용하여 교체와 일치하는 기능 :

input = input.replace(/(\\u[a-f0-9]{4})/gi, function(m) { 
    switch (m.toUpperCase()) 
    { 
     case "\\UE40A": return '<img src="image/path"/>'; 
     case "\\UE53C": return '<img src="image/path/2"/>'; 
     default: return m; 
    } 
}); 
+0

'input = '

''으로 시도해보십시오. – Oriol

+0

나는 이것을 피들에서 시도해 보았고 여기에 내가 가진 것이있다. http://jsfiddle.net/3zL7qrgb/2/ – R4mirezZ

+0

alert() * 실제 * 입력 문자열과 실제로 * "\ ue40a"를 보면 자바 스크립트에서 문자열을 하나 사용하는 대신 두 개의 \\를 사용해야합니다. - http://jsfiddle.net/ztj0akp6/ –

관련 문제