2012-01-03 2 views
4

?=에 대한 자바 스크립트에서 정규식을 만드는 방법은 무엇입니까? (? 검색 =)자바 스크립트를 물음표로 대체

나는 BTW (/ 검색 /)

<script> 
var ss = "http://localhost/search?search=words".replace("/\?search\=/g", "/search/"); 
document.write(ss); 
</script> 

http://localhost/search/search/words

http://localhost/search?search=words

에서 뭔가를 원하는 : 그냥 prastic을 htaccss는 다시 작성하지 않습니다. 감사.

+0

키 - 값 쌍을 단일 값 디렉토리로 변경하는 것은 의미가 없으며 사용자가 가지고있는 인코딩이 무엇이든지간에 실제로 수행 할 수 있습니다. 응, 너 연습을 말했어. 근데 여기서 너는 실제로 무엇을 하려니? – Incognito

답변

16

거의 다! =은 특수 문자가 아니므로 이스케이프 할 필요가 없습니다. 또한 정규식 문자열은 따옴표로 묶이지 않습니다. 그래서 :

var ss = "http://localhost/search?search=words".replace("?search=", "/search/"); 
+0

+1 120 초 빠름! =) (물론, 절대적으로 맞습니다!) –

4

당신은 간단한 문자열을 사용할 수 있습니다 구조를 만들고 올바르게 다시 작성하면 단순 교체 대신 훨씬 더 건강하고 견고한 코드가 생성됩니다.

3

을가 에 대한 기능은 URL을 이해하기 위해 아마 더 나은 점에 유의 어떻게에 대한

str.replace(/[?=]/g, "/"); 

: 교체에 대한

"http://localhost/search?search=words".replace(/\?search=/g, "/search/"); 
+0

더블 슬래시는 슬래시를 이스케이프하지 않습니다. – PointedEars

+0

나쁘다. 백 슬래시와 혼동된다. 수정 됨. –

+0

한 번 작동하지만 예, OP의 요구 사항에서 실패합니다. 결정된. 또한, 나는 실제로 그 FM의 일부를 썼다. 그래서 나는 잠드는 시간에 질문에 답하는 것이 내가 지식이 부족하지 않다는 것을 의미하지 않는다. http://i.qkme.me/35bp94.jpg << 그 얼굴은 내가 btw :) –

관련 문제