2009-12-19 2 views
7

값을 가져와 공백을 대시 (자바 스크립트)로 바꾸려면 정규 표현식을 사용해야합니까?대시로 공백을 바꾸는 정규 표현식

북미가 있다면 북미를 돌려 주겠습니까?

var foo = bar.replace(' ', '-')과 같은 조치를 취할 수 있습니까?

답변

8

그것은 사용하는 것이 좋습니다 :

var string = "find this and find that".replace(/find/g, "found"); 

이 모든 항목을 바꿀 수 있습니다.

+0

멍청한 것에 대해 유감스럽게 생각하지만 내 경우에는 어떻게해야합니까? – Rich

+0

var foo = bar.replace (/ \/g, '-'); 이것은 모든 정규 표현식 일치를 찾습니다. 즉, js의 regexps는 '/'로 둘러싸여 있으며, '모든'g ', 공백 ('\ '- 이스케이프 됨)을 찾아'- '로 바꿉니다. –

+0

bar.replace ('', '-')'보다 이것을 사용하는 것이 더 좋은 이유는 무엇입니까? – tangens

4

예, 가능합니다. 물어보기 전에 왜 이걸 시도하지 않았 니?

+1

알아 두십시오! @ alexander-shvetsov가 그의 대답에서 설명하는 것처럼'bar.replace ('', '-')'는 단지 첫 번째 나타나는 것을 대체합니다. – tangens

2

내가 발견 한 다양한 언어의 정규 표현식에 대한 최상의 정보 출처는 Regular-Expressions.info이며 거기에서 직접 자바 스크립트 섹션에 연결되었습니다.

특정 질문에 대해서는 그렇습니다. 너 해봤 니?

var before = 'North America'; 
var after = before.replace(/ +/g, '-') 
alert('"' + before + '" becomes "' + after + '"'); 

위의 정규 표현식을 분석 한 사이트를 사용하십시오. 요청한대로 하나 이상의 공백을 하나의 하이픈으로 대체하는 방법에 유의하십시오.