Rumah > hujung hadapan web > tutorial js > Petua menggunakan ungkapan biasa dalam JavaScript

Petua menggunakan ungkapan biasa dalam JavaScript

WBOY
Lepaskan: 2023-06-15 22:44:17
asal
1430 orang telah melayarinya

Ekspresi biasa ialah alat yang berkuasa untuk memadankan dan mendapatkan semula teks, dan JavaScript, sebagai bahasa yang digunakan secara meluas dalam pembangunan web, juga menyediakan sokongan ungkapan biasa yang kaya. Dalam pembangunan JavaScript sebenar, menguasai kemahiran menggunakan ungkapan biasa boleh meningkatkan kecekapan dan ketepatan pembangunan. Artikel ini akan memperkenalkan beberapa teknik penggunaan ungkapan biasa JavaScript biasa.

1. Cipta objek ungkapan biasa

Terdapat dua cara untuk mencipta ungkapan biasa dalam JavaScript: menggunakan literal dan menggunakan pembina RegExp(). Literal ialah kaedah penciptaan yang biasa digunakan dan sintaksnya ialah:

var pattern = /正则表达式/;
Salin selepas log masuk

Antaranya, kandungan antara garis miring berganda ialah corak ungkapan biasa. Menggunakan pembina RegExp() untuk mencipta ungkapan biasa memerlukan dua parameter: mod dan bendera. Contohnya,

var pattern = new RegExp("正则表达式", "标志");
Salin selepas log masuk

di mana bendera boleh menjadi g, i dan m, yang masing-masing mewakili padanan global, padanan tidak peka huruf besar dan kecil dan berbilang baris.

2. Kaedah pemadanan ungkapan biasa yang biasa digunakan

Dalam JavaScript, terdapat tiga kaedah pemadanan ungkapan biasa yang biasa digunakan: test(), exec() dan match(). Perbezaan antara mereka terletak pada jenis dan kandungan nilai pulangan:

  1. kaedah test(): digunakan untuk menguji sama ada terdapat kandungan yang sepadan dengan corak dalam rentetan dan mengembalikan nilai Boolean. Contohnya:
var pattern = /hello/;
var str = "hello world";
console.log(pattern.test(str)); // 输出true
Salin selepas log masuk
  1. kaedah exec(): digunakan untuk mengembalikan maklumat hasil padanan, termasuk rentetan padanan, kedudukan permulaan dan kedudukan akhir padanan dan maklumat lain. Jika tiada padanan, null dikembalikan. Contohnya:
var pattern = /hello/g;
var str = "hello world hello";
var result;
while ((result = pattern.exec(str)) !== null) {
  console.log("Found " + result[0] + " at position " + result.index);
}
Salin selepas log masuk

Kod di atas akan mengeluarkan lokasi dua helo yang ditemui.

  1. kaedah padanan(): digunakan untuk mengembalikan set rentetan padanan atau batal jika tiada padanan. Contohnya:
var pattern = /hello/g;
var str = "hello world hello";
console.log(str.match(pattern)); // 输出["hello", "hello"]
Salin selepas log masuk

Memandangkan kaedah padanan() mengembalikan tatasusunan, anda boleh menggunakan kaedah forEach() untuk melintasi hasil yang sepadan:

var pattern = /hello/g;
var str = "hello world hello";
var result = str.match(pattern);
result.forEach(function(match) {
  console.log(match);
});
Salin selepas log masuk

Kod di atas akan mengeluarkan dua hello ditemui.

3. Sintaks asas dan simbol biasa ungkapan biasa

Corak ungkapan biasa terdiri daripada berbilang aksara meta dan aksara biasa. Berikut ialah beberapa simbol ungkapan biasa biasa:

  1. Kelas aksara: disertakan dalam kurungan segi empat sama [], menunjukkan bahawa mana-mana aksara boleh dipadankan. Contohnya, [abc] bermaksud ia boleh memadankan mana-mana aksara antara a, b dan c.
  2. sepadan dengan mana-mana aksara: Gunakan titik Ini bermakna ia boleh memadankan mana-mana aksara, kecuali aksara baris baharu.
  3. Simbol ulang: digunakan untuk menentukan bilangan kali aksara atau set aksara sebelumnya muncul. Contohnya, a+ bermaksud memadankan satu atau lebih a.
  4. Simbol padanan sempadan: ^ bermaksud apa yang bermula dengan, $ bermaksud apa yang berakhir.
  5. Notasi pengkuantiti tamak: digunakan selepas notasi berulang? Mewakili perlawanan yang tidak tamak. Sebagai contoh, a+? Menunjukkan padanan satu atau lebih a, tetapi sepadan dengan sesedikit aksara yang mungkin.
  6. Koleksi: digunakan untuk menentukan julat. Contohnya, [0-9] memadankan sebarang nombor antara 0 dan 9.

Di atas hanyalah beberapa simbol ungkapan biasa asas dalam JavaScript juga menyokong banyak sintaks lanjutan Sila rujuk dokumen yang berkaitan untuk mengetahui lebih lanjut.

4. Gunakan ungkapan biasa untuk melaksanakan penggantian rentetan dan pembahagian

Dalam JavaScript, ungkapan biasa boleh digunakan untuk operasi penggantian rentetan dan pembahagian.

  1. Penggantian rentetan: Gunakan kaedah replace() untuk menggantikan bahagian rentetan yang sepadan dengan aksara atau rentetan yang ditentukan.
var str = "JavaScript Regular Expression";
var pattern = /JavaScript/g;
var result = str.replace(pattern, "JS");
console.log(result); // 输出JS Regular Expression
Salin selepas log masuk
  1. Pembahagian rentetan: Gunakan kaedah split() untuk membahagi rentetan kepada berbilang rentetan mengikut pembatas yang ditentukan dan mengembalikan tatasusunan.
var str = "JavaScript,Regular,Expression";
var pattern = /[, ]+/; // 匹配逗号或空格
var result = str.split(pattern);
console.log(result); // 输出["JavaScript", "Regular", "Expression"]
Salin selepas log masuk

Kod di atas menggunakan ungkapan biasa untuk memisahkan rentetan kepada berbilang rentetan dengan koma atau ruang dan mengembalikan tatasusunan.

5. Kesimpulan

Seperti yang dapat dilihat daripada pengenalan artikel ini, adalah sangat mudah untuk menggunakan ungkapan biasa untuk menyelesaikan operasi asas seperti padanan rentetan, penggantian dan pembahagian dalam JavaScript, tetapi ia juga perlu dikuasai sintaks asas dan simbol biasa ungkapan biasa. Menggunakan ungkapan biasa boleh meningkatkan kecekapan pembangunan JavaScript, mengurangkan jumlah kod, dan mengurangkan kesukaran pembangunan Oleh itu, adalah sangat penting untuk menguasai ungkapan biasa.

Atas ialah kandungan terperinci Petua menggunakan ungkapan biasa dalam JavaScript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan