반응형
JavaScript - 문자열의 모든 콤마를 바꿉니다.
여러 개의 콤마를 가진 문자열이 있으며 문자열 치환 메서드는 첫 번째 문자열만 변경합니다.
var mystring = "this,is,a,test"
mystring.replace(",","newchar", -1)
결과:"thisnewcharis,a,test"
문서에는 기본값으로 모두 대체되고 "-1"도 모두 대체됨을 나타내지만 성공하지 못했습니다.무슨 생각 있어?
함수의 세 번째 파라미터는 표준으로 정의되지 않았기 때문에 대부분의 브라우저는 단순히 구현하지 않습니다.
가장 좋은 방법은 정규 표현을 사용하는 것입니다.g
(글로벌) 플래그
var myStr = 'this,is,a,test';
var newStr = myStr.replace(/,/g, '-');
console.log( newStr ); // "this-is-a-test"
아직 문제가 있나요?
정규 표현은 이스케이프해야 하는 특수 문자를 사용한다는 점에 유의하십시오.예를 들어 점을 이스케이프할 필요가 있는 경우(.
)의 문자를 사용합니다./\./
regex 구문에서와 같이 도트는 임의의 단일 문자(행 끝자 제외)와 일치합니다.
var myStr = 'this.is.a.test';
var newStr = myStr.replace(/\./g, '-');
console.log( newStr ); // "this-is-a-test"
변수를 대체 문자열로 전달해야 할 경우 regex 리터럴을 사용하는 대신RegExp
오브젝트를 지정하고 문자열을 생성자의 첫 번째 인수로 전달합니다.표준 문자열 이스케이프 규칙(특수 문자 앞에 있음)\
문자열에 포함된 경우)가 필요합니다.
var myStr = 'this.is.a.test';
var reStr = '\\.';
var newStr = myStr.replace(new RegExp(reStr, 'g'), '-');
console.log( newStr ); // "this-is-a-test"
재미삼아:
var mystring = "this,is,a,test"
var newchar = '|'
mystring = mystring.split(',').join(newchar);
var mystring = "this,is,a,test"
mystring.replace(/,/g, "newchar");
글로벌 사용(g
) 플래그
언급URL : https://stackoverflow.com/questions/10610402/javascript-replace-all-commas-in-a-string
반응형
'source' 카테고리의 다른 글
Java 8: Java.util.function의 TriFunction(및 kin)은 어디에 있습니까?아니면 대체방법이 뭐죠? (0) | 2023.02.06 |
---|---|
비단뱀의 람다로 if를 하는 방법이 있나요? (0) | 2023.02.06 |
문자열이 날짜인지 확인하는 함수 (0) | 2023.02.01 |
SQL 퍼포먼스:순서 사용 시 OR 사용 속도가 IN보다 느립니다. (0) | 2023.02.01 |
vue.js를 사용하여 동적 클래스 이름 추가 (0) | 2023.02.01 |