바꿀 수 있을까
Hello, this is Mike (example)
에
Hello, this is Mike
Regex에서 JavaScript를 사용하십니까?
답변
"Hello, this is Mike (example)".replace(/ *\([^)]*\) */g, "");
결과:
"Hello, this is Mike"
답변
var str = "Hello, this is Mike (example)";
alert(str.replace(/\s*\(.*?\)\s*/g, ''));
또한 괄호 앞뒤의 여분의 공백을 대체합니다.
답변
시험 / \([\s\S]*?\)/g
어디
(공백)은 문자
(공백)와 문자 그대로 일치합니다.
\(
문자 (
그대로 문자 와 일치
[\S\s]
모든 문자 \S
와 일치 ( 비 공백 문자와 \s
일치하고 모든 공백 문자 와
일치)
*?
0 번과 무제한 시간 사이의 일치
\)
문자 )
그대로 문자 와 일치
g
전 세계적으로 일치
코드 예 :
var str = "Hello, this is Mike (example)";
str = str.replace(/ \([\s\S]*?\)/g, '');
console.log(str);
.as-console-wrapper {top: 0}
답변
이 버전이 모든 경우에 가장 적합하다는 것을 알았습니다. 모든 공백을 제거하지는 않습니다.
예 : “a (테스트) b”-> “a b”
"Hello, this is Mike (example)".replace(/ *\([^)]*\) */g, " ").trim();
"Hello, this is (example) Mike ".replace(/ *\([^)]*\) */g, " ").trim();
답변
중첩 된 괄호 안의 텍스트도 제거해야하는 경우 :
var prevStr;
do {
prevStr = str;
str = str.replace(/\([^\)\(]*\)/, "");
} while (prevStr != str);