Apakah mungkin untuk berubah
Hello, this is Mike (example)
untuk
Hello, this is Mike
menggunakan JavaScript dengan Regex?
javascript
regex
jack moore
sumber
sumber
(example)
hanya inginvar str = "Hello, this is Mike (example)"; alert(str.replace(/\s*\(.*?\)\s*/g, ''));
Itu juga akan menggantikan spasi kosong berlebih sebelum dan sesudah tanda kurung.
sumber
Mencoba
/ \([\s\S]*?\)/g
Dimana
\(
mencocokkan karakter(
secara harfiah[\s\S]
cocok dengan karakter apapun (\s
cocok dengan karakter spasi dan\S
cocok dengan karakter non-spasi)*?
pertandingan antara waktu nol dan waktu tidak terbatas\)
mencocokkan karakter)
secara harfiahg
cocok secara globalContoh Kode:
var str = "Hello, this is Mike (example)"; str = str.replace(/ \([\s\S]*?\)/g, ''); console.log(str);
.as-console-wrapper {top: 0}
sumber
Saya menemukan versi ini paling cocok untuk semua kasus. Itu tidak menghapus semua spasi.
Misalnya "a (test) b" -> "a b"
"Hello, this is Mike (example)".replace(/ *\([^)]*\) */g, " ").trim(); "Hello, this is (example) Mike ".replace(/ *\([^)]*\) */g, " ").trim();
sumber
trim
tidak didukung secara universal: developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/… , setidaknya tidak di tahun 2015 ... di tahun 2017 ini terlihat jauh lebih baik.Jika Anda juga perlu menghapus teks di dalam tanda kurung bersarang, maka:
var prevStr; do { prevStr = str; str = str.replace(/\([^\)\(]*\)/, ""); } while (prevStr != str);
sumber