cari

Rumah  >  Soal Jawab  >  teks badan

javascript - Prinsip dan pelaksanaan: Cadangan pelengkapan beberapa aksara

  1. Bantuan kandungan memberi anda senarai cadangan pelengkapan untuk rentetan yang dimasukkan separa.
    Bantuan kandungan memberi anda senarai penyempurnaan yang dicadangkan untuk rentetan yang dimasukkan separa.

  2. Penerangan lebih kurang seperti di atas, saya tidak tahu bagaimana untuk menggunakan perkataan yang lebih tepat untuk menerangkannya.

  3. Terdapat fungsi ini dalam
  4. sublime, anda memasukkan "aksara tidak lengkap" dan ia akan mengembalikan kepada anda semua hasil yang mengandungi huruf ini. Contohnya: Masukkan ds untuk mendapatkan meja , walaupun terdapat huruf e di tengah.

  5. Saya cuma nak tahu bagaimana ini dicapai dan apakah prinsipnya?

  6. Selain itu, adakah fungsi ini mempunyai nama (saya sebenarnya tidak tahu apa fungsi ini harus dipanggil, jadi ia menghalang carian saya untuk jawapan dalam talian)?

天蓬老师天蓬老师2707 hari yang lalu803

membalas semua(2)saya akan balas

  • 迷茫

    迷茫2017-07-03 11:44:19

    @boxsnake memberikan contoh mencari tatasusunan Hasil yang dikembalikan harus diisih "avsdsss" mempunyai keutamaan tertinggi, dan ia mengandungi "ds" berturut-turut. "Semua orang" juga harus memukul, ia mengandungi "d".

    Kerumitan masa mencari tatasusunan terlalu tinggi Apabila terdapat banyak kata kunci, pada dasarnya kelajuannya tidak boleh diterima.

    Kaedah yang cekap dan boleh dilaksanakan ialah menggunakan pokok carian rentetan.
    Pokok trie (pokok kamus) untuk pemprosesan data secara besar-besaran

    balas
    0
  • 女神的闺蜜爱上我

    女神的闺蜜爱上我2017-07-03 11:44:19

    1. Fungsi ini sepatutnya dipanggil "Cari Petua Pintar"

    2. Terdapat banyak cara untuk melaksanakannya, tetapi saya hanya tahu yang paling mudah dan paling mudah untuk difahami Algoritma pertanyaan kompleks dioptimumkan, yang lebih cekap dan mungkin melibatkan masalah pengaturcaraan dinamik.

    3. Jika ia adalah kaedah yang paling mudah, ia adalah untuk membelah rentetan, kemudian letakkan .* antara setiap dua aksara, kemudian jana ungkapan biasa, dan gunakan ungkapan biasa ini untuk memadankan senarai

    4. Kod pseudo JS:

    var list = [ ... ];
    var text = 'ds';
    var result = [];
    
    if(text != '') {
        var pattern = new RegExp(text.split('').join('.*'));
    
        result = list.filter(function(item) {
            return pattern.test(item);
        });
    }

    Kesan tunjuk cara:

    balas
    0
  • Batalbalas