Rumah > hujung hadapan web > tutorial js > Bagaimana untuk Mencapai Fungsi Regex Look Behind dalam JavaScript?

Bagaimana untuk Mencapai Fungsi Regex Look Behind dalam JavaScript?

DDD
Lepaskan: 2024-11-13 12:41:02
asal
690 orang telah melayarinya

How to Achieve Regex Lookbehind Functionality in JavaScript?

Regex Look Behind Alternative dalam JavaScript

Masalah:

JavaScript tidak menawarkan kaedah asli untuk melihat regex di belakang. Akibatnya, ungkapan biasa berikut, yang berfungsi dengan berkesan dalam pelaksanaan lain, gagal dalam JavaScript:

(?<!filename)\.js$
Salin selepas log masuk

Rex reges ini bertujuan untuk memadankan sambungan ".js" di hujung rentetan, tetapi hanya jika ia adalah tidak didahului oleh "nama fail.js."

Penyelesaian:

Satu pendekatan untuk mensimulasikan pandangan regex di belakang dalam JavaScript melibatkan penggunaan fungsi pembantu. Walau bagaimanapun, regex alternatif yang lebih mudah mencapai hasil yang diingini:

^(?:(?!filename.js$).)*.js$
Salin selepas log masuk

Penjelasan:

regex ini menggunakan pandangan negatif ke hadapan untuk mengesahkan bahawa setiap aksara dalam rentetan melakukan tidak sepadan dengan ungkapan "nama fail.js" diikuti dengan penghujung rentetan. Hanya selepas itu watak itu boleh sepadan dengan regex. Di bawah ialah pecahan regex:

^                 # Start of string
(?:               # Try to match the following:
 (?!              # First assert that we can't match the following:
  filename.js    # filename.js
  $               # and end-of-string
 )                # End of negative lookahead
 .                # Match any character
)*                # Repeat as needed
.js              # Match .js
$                 # End of string
Salin selepas log masuk

Penyelesaian Diperbaiki:

Kaedah yang lebih cekap untuk mencapai hasil yang sama ialah menggunakan regex berikut:

^(?!.*filename.js$).*\.js$
Salin selepas log masuk

Reteks ini menegaskan bahawa keseluruhan rentetan tidak boleh mengandungi "nama fail.js" dan seterusnya sepadan dengan mana-mana rentetan yang berakhir dengan ".js."

Atas ialah kandungan terperinci Bagaimana untuk Mencapai Fungsi Regex Look Behind dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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