Rumah  >  Artikel  >  hujung hadapan web  >  Bagaimana Mengekstrak Nama Hos daripada URL Tanpa Ungkapan Biasa?

Bagaimana Mengekstrak Nama Hos daripada URL Tanpa Ungkapan Biasa?

Barbara Streisand
Barbara Streisandasal
2024-11-12 19:01:02178semak imbas

How to Extract Hostname from a URL Without Regular Expressions?

Mengekstrak Nama Hos tanpa Ungkapan Biasa

Pernyataan Masalah

Memadankan nama hos URL tanpa menangkap keseluruhan URL adalah tugas biasa. Memandangkan rentetan teks yang mengandungi berbilang URL, objektifnya adalah untuk mengekstrak nama hos bagi dua kejadian sahaja yang diselesaikan kepada domain tertentu, seperti example.com.

Penyelesaian Alternatif

Daripada menggunakan ungkapan biasa, yang kadangkala tidak cekap, pendekatan alternatif boleh digunakan:

var tmp = document.createElement('a');
tmp.href = "http://www.example.com/12xy45";

Kaedah ini memanfaatkan kelebihan tersembunyi. Dengan mencipta elemen penambat sementara dan memberikannya rentetan URL, kami boleh mengakses nama hos dan sifat hos, yang menyediakan komponen nama hos tanpa laluan atau protokol URL.

// tmp.hostname will now contain 'www.example.com'
// tmp.host will now contain hostname and port 'www.example.com:80'

Untuk merangkum fungsi ini menjadi mudah fungsi:

function url_domain(data) {
  var a = document.createElement('a');
  a.href = data;
  return a.hostname;
}

Dengan menyediakan rentetan URL sebagai hujah kepada fungsi ini, kami memperoleh komponen nama hos sebagai hasilnya.

Atas ialah kandungan terperinci Bagaimana Mengekstrak Nama Hos daripada URL Tanpa Ungkapan Biasa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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