Apa arti ekspresi reguler / _ / g?

96

JavaScript:

.replace(/_/g," ");

Saya memilikinya di kode saya tetapi tidak dapat mengingat mengapa atau apa fungsinya! Bisakah salah satu dari Anda guru ekspresi reguler membantu?

Saya tahu ini mungkin tampak mendasar, tetapi ekspresi reguler bukanlah secangkir teh dan pencarian Google /gtidak banyak membantu.

Tom
sumber
1
hanya untuk menambahkan .. Anda dapat menggunakan / / gi untuk membuatnya peka huruf besar kecil! Kadang-kadang Anda ingin mengubah kata-kata dalam string atau paragraf, tetapi kebetulan beberapa di antaranya ada di awal kalimat, jadi sebagian besar kasus menggunakan huruf besar, jika Anda hanya menggunakan g, itu akan menggantikan hanya biarkan katakan "Malaikat" dan lupa tentang "malaikat" atau sebaliknya, itu tergantung pada argumen Anda. ps: Ini bekerja dengan metode replace () di JavaScript.
A.McLoof

Jawaban:

155

Ekspresi reguler cocok dengan _karakter.

The gberarti global , dan menyebabkan replacepanggilan untuk mengganti semua pertandingan, bukan hanya yang pertama.

SLaks
sumber
26

Seperti yang dikatakan orang lain, ini menggantikan semua garis bawah dengan spasi. Jadi "Hello_there."akan menjadi"Hello there."

Namun seiring dengan jawabannya, saya ingin menyarankan sesuatu kepada Anda. Gunakan komentar.

Dalam kode Anda, katakan sesuatu seperti:

// Replaces all underscores so that blah blah blah blah blah..
var hello = "Hello_there."
    .replace(/_/g, ' ');
McKayla
sumber
3

Mengembalikan string baru dengan semua garis bawah di string sumber diganti dengan spasi.

Roy Tinker
sumber