Sarebbe possibile cambiare
Hello, this is Mike (example)
per
Hello, this is Mike
usando JavaScript con Regex?
Sarebbe possibile cambiare
Hello, this is Mike (example)
per
Hello, this is Mike
usando JavaScript con Regex?
Risposte:
"Hello, this is Mike (example)".replace(/ *\([^)]*\) */g, "");
Risultato:
"Hello, this is Mike"
(example)solo
var str = "Hello, this is Mike (example)";
alert(str.replace(/\s*\(.*?\)\s*/g, ''));
Questo sostituirà anche gli spazi bianchi in eccesso prima e dopo le parentesi.
Provare / \([\s\S]*?\)/g
Dove
(spazio) corrisponde al carattere (spazio) letteralmente
\(corrisponde al carattere (letteralmente
[\S\s]corrisponde a qualsiasi carattere ( \Scorrisponde a qualsiasi carattere diverso da spazi e
\scorrisponde a qualsiasi carattere di spazio)
*? partite tra zero e tempi illimitati
\)corrisponde al carattere )letteralmente
g partite a livello globale
Esempio di codice:
var str = "Hello, this is Mike (example)";
str = str.replace(/ \([\s\S]*?\)/g, '');
console.log(str);
.as-console-wrapper {top: 0}
Ho trovato questa versione più adatta a tutti i casi. Non rimuove tutti gli spazi bianchi.
Ad esempio "a (test) b" -> "a b"
"Hello, this is Mike (example)".replace(/ *\([^)]*\) */g, " ").trim();
"Hello, this is (example) Mike ".replace(/ *\([^)]*\) */g, " ").trim();
trimnon è universalmente supportato: developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/… , almeno non era nel 2015 ... nel 2017 sembra molto meglio.