[javascript] JavaScript 문자열에서 슬래시를 전역 적으로 바꾸는 방법은 무엇입니까?

JavaScript 문자열에서 슬래시를 전역 적으로 바꾸는 방법은 무엇입니까?



답변

다음은 수행하지만 한 번만 대체합니다.

"string".replace('/', 'ForwardSlash');

전역 대체의 경우 또는 정규식을 선호하는 경우 슬래시를 이스케이프하면됩니다.

"string".replace(/\//g, 'ForwardSlash');


답변

g한정자 와 함께 정규식 리터럴을 사용 하고 구분 기호와 충돌하지 않도록 백 슬래시로 슬래시를 이스케이프합니다.

var str = 'some // slashes', replacement = '';
var replaced = str.replace(/\//g, replacement);


답변

정규식을 사용하지 않고 (검색 문자열이 사용자 입력 인 경우에만이 작업을 수행하지만) :

var str = 'Hello/ world/ this has two slashes!';
alert(str.split('/').join(',')); // alerts 'Hello, world, this has two slashes!' 


답변

이것이 당신이 원하는 것입니까?

'string with / in it'.replace(/\//g, '\\');


답변

이것은 "//"단지 "/".

str.replace(/\/\//g, '/');


답변

크로스 브라우저 문제 또는 주석 처리를 방지하려면 슬래시를 래핑해야합니다.

str = 'this/that and/if';

var newstr = str.replace(/[/]/g, 'ForwardSlash');


답변

안녕하세요. 위 스크립트에서 약간의 수정이 있습니다. 위 스크립트는 출력을 표시 할 때 첫 번째 문자를 건너 뜁니다.

function stripSlashes(x)
{
var y = "";
for(i = 0; i < x.length; i++)
{
    if(x.charAt(i) == "/")
    {
        y += "";
    }
    else
    {
        y+= x.charAt(i);
    }
}
return y;
}