Artikel ini adalah artikel cermin dari terjemahan mesin, silakan klik di sini untuk melompat ke artikel aslinya.

Melihat: 23439|Jawab: 1

[Sumber] Asisten segmentasi kata Pangu

[Salin tautan]
Diposting pada 17/07/2017 10.02.38 | | |
menggunakan Sistem;
menggunakan System.Collections.Generic;
menggunakan System.Linq;
menggunakan System.Text;
menggunakan System.Threading.Tasks;
menggunakan PanGu.Dict;
menggunakan PanGu.Framework;
menggunakan PanGu.Match;
menggunakan PanGu.Setting;
menggunakan PanGu.HighLight;
menggunakan Lucene.Net.Analysis;
menggunakan System.IO;
menggunakan PanGu;
menggunakan System.Configuration;

namespace Pangu.Helper
{
    kelas umum PanguHelper
    {

        PanguHelper statis volatil pribadi _instance = null;
        objek readonly statis privat lockHelper = objek baru();
        pribadi PanguHelper() { }

        /// <summary>
        [Default menggunakan profil pangu.xml di bawah jalur yang sama]
        /// </summary>
        /// <returns></returns>
        publik statis PanguHelper ShareHelper
        {
            dapatkan
            {
                jika (_instance == null)
                {
                    kunci (lockHelper)
                    {
                        jika (_instance == null)
                        {
                            _instance = PanguHelper baru();
                            string configFile = ConfigurationManager.AppSettings["PANGU_CONFIG"] + "";
                            if (configFile != "")
                            {
                                _instance. Gunakan(configFile);
                            }
                        }
                    }
                }

                mengembalikan _instance;
            }
        }

        /// <summary>
        Menginisialisasi file konfigurasi yang ditentukan
        /// </summary>
        <param name="configFile"> file konfigurasi pangu</param>
        public void Use(string configFile)
        {
            PanGu.Segment.Init(configFile);
        }

        /// <summary>
        Mendapatkan deskripsi bagian pidato
        /// </summary>
        <param name="pos"> bagian dari pencacahan ucapan</param>
        /// <returns></returns>
        string publik GetPosDescrip{filter}t(POS pos)
        {
            Beralih (POS)
            {
                kasus POS. POS_UNK: mengembalikan "bagian pidato yang tidak diketahui;"
                kasus POS. POS_D_K: mengembalikan "komponen trailing";
                kasus POS. POS_D_H: mengembalikan "komponen sebelumnya";
                kasus POS. POS_A_NZ: mengembalikan "nama lain yang tepat";
                kasus POS. POS_A_NX: mengembalikan "karakter asing";
                kasus POS. POS_A_NR: mengembalikan "nama orang";
                kasus POS. POS_D_Z: mengembalikan "kata status";
                kasus POS. POS_A_NT: mengembalikan "badan lembaga";
                kasus POS. POS_A_NS: mengembalikan "nama tempat";
                kasus POS. POS_D_Y: mengembalikan "morfem suasana hati kata mood";
                kasus POS. POS_D_X: mengembalikan "kata non-morfem";
                kasus POS. POS_D_W: mengembalikan "tanda baca";
                kasus POS. POS_D_T: mengembalikan "kata waktu";
                kasus POS. POS_D_S: kembalikan "kata tempat";
                kasus POS. POS_D_V: mengembalikan "morfem kata kerja";
                kasus POS. POS_D_U: mengembalikan "morfem partikel partikel";
                kasus POS. POS_D_R: mengembalikan "morfem kata ganti kata ganti";
                kasus POS. POS_A_Q: mengembalikan "morfem pengukur kuantitifier";
                kasus POS. POS_D_P: mengembalikan "preposisi";
                kasus POS. POS_D_MQ: mengembalikan "quantifier";
                kasus POS. POS_A_M: mengembalikan "angka, angka, angka";
                kasus POS. POS_D_O: mengembalikan "onomatopoeia";
                kasus POS. POS_D_N: mengembalikan "morfem kata benda";
                kasus POS. POS_D_F: mengembalikan "morfem azimuth kata azimuth";
                kasus POS. POS_D_E: mengembalikan "morfem interjeksi";
                kasus POS. POS_D_L: mengembalikan "idiom";
                kasus POS. POS_D_I: mengembalikan "idiom";
                kasus POS. POS_D_D: mengembalikan "morfem kata keterangan keterangan";
                kasus POS. POS_D_C: mengembalikan "morfem konjungsi konjungtif";
                kasus POS. POS_D_B: kembali "untuk membedakan kata-kata untuk membedakan morfem";
                kasus POS. POS_D_A: mengembalikan "morfem kata sifat";
            }
            mengembalikan "bagian pidato yang tidak diketahui";
        }



        /// <summary>
        Dapatkan participle [Info Kata Asli]
        /// </summary>
        <param name="content"> isi kata yang akan dipisahkan</param>
        <param name="matchOptions"> menggunakan opsi pencocokan</param>
        <param name="matchParameter"> menggunakan parameter match</param>
        /// <returns></returns>
        publik ICollection<WordInfo> GetSegmentWords(konten string, MatchOptions matchOptions = null,
           MatchParameter matchParameter = null)
        {
            Segmen segmen = segmen baru Segmen();
            Kata-kata ICollection<WordInfo> = segmen. DoSegment(content, matchOptions, matchParameter);
            mengembalikan kata-kata;
        }



        /// <summary>
        Dapatkan participle
        /// </summary>
        <param name="content"> isi kata yang akan dipisahkan</param>
        <param name="matchOptions"> Opsi pencocokan digunakan, bukan secara default</param>
        <param name="matchParameter" > menggunakan parameter yang cocok, bukan secara default</param>
        publik List<string> GetSplitWords(konten string, MatchOptions matchOptions = null, MatchParameter matchParameter = null)
        {
            Segmen segmen = segmen baru Segmen();
            Kata-kata ICollection<WordInfo> = segmen. DoSegment(content,matchOptions,matchParameter);
            <string> Daftar daftar = Daftar baru<string>();
            foreach (kata WordInfo dalam kata-kata)
            {
                daftar. Tambah(kata. Kata);
            }
            daftar pengembalian;
        }


        /// <summary>
        Dapatkan participle dari frekuensi kata yang ditentukan
        /// </summary>
        <param name="content"> isi kata yang akan dipisahkan</param>
        <param name="frekuensi"> frekuensi kata</param>
        <param name="matchOptions"> Opsi pencocokan digunakan, bukan secara default</param>
        <param name="matchParameter" > menggunakan parameter yang cocok, bukan secara default</param>
        /// <returns></returns>
        publik List<string> GetSplitWordsByFrequency(konten string, frekuensi ganda, MatchOptions matchOptions = null,
            MatchParameter matchParameter = null)
        {
            Segmen segmen = segmen baru Segmen();
            Kata-kata ICollection<WordInfo> = segmen. DoSegment(content, matchOptions, matchParameter);

            <string> Daftar daftar = Daftar baru<string>();
            foreach (kata WordInfo dalam kata-kata)
            {
                if (frekuensi == kata. Frekuensi)
                {
                    daftar. Tambah(kata. Kata);
                }
            }
            daftar pengembalian;
        }


        /// <summary>
        Dapatkan participle dengan bobot tertentu
        /// </summary>
        <param name="content"> isi kata yang akan dipisahkan</param>
        <param name="rank"> berat</param>
        <param name="matchOptions"> Opsi pencocokan digunakan, bukan secara default</param>
        <param name="matchParameter" > menggunakan parameter yang cocok, bukan secara default</param>
        /// <returns></returns>
        public List<string> GetSplitWordsByRank(konten string, int rank, MatchOptions matchOptions = null,
            MatchParameter matchParameter = null)
        {
            Segmen segmen = segmen baru Segmen();
            Kata-kata ICollection<WordInfo> = segmen. DoSegment(content, matchOptions, matchParameter);

            <string> Daftar daftar = Daftar baru<string>();
            foreach (kata WordInfo dalam kata-kata)
            {
                if (rank == kata. Peringkat)
                {
                    daftar. Tambah(kata. Kata);
                }
            }
            daftar pengembalian;
        }


        /// <summary>
        Sorotan
        /// </summary>
        <param name="keyword"> string yang akan disorot</param>
        <param name="content">content</param>
        <param name="fragmentSize"> jumlah karakter untuk setiap bidang ringkasan</param>
        <returns>Konten yang disorot</returns>
        string statis publik HighLight (kata kunci string, konten string, int fragmentSize)
        {
            Buat kode HTML dengan parameter yang menyoroti istilah penelusuran  
            SimpleHTMLFormatter simpleHTMLFormatter = new SimpleHTMLFormatter("<font color='red'>", "</font>");
            Buat penyorotan, masukkan kode HTML dan objek Pangu Semgent  
            Penyorot lebih tinggi = Penyorot baru(simpleHTMLFormatter, Segmen baru());
            Atur jumlah karakter untuk setiap bidang ringkasan  
            lebih tinggi. FragmentSize = fragmentSize;
            string highlightStr = lebih tinggi. GetBestFragment(kata kunci, konten);

            if (string. IsNullOrEmpty(highlightStr))
            {
                mengembalikan konten;
            }
            kembali sorotanStr;
        }



    }

}


Skor

Jumlah peserta1MB+2 sumbang+2 Roboh alasan
Sampah kecil + 2 + 2 Sangat kuat!

Lihat semua penilaian





Mantan:alat akses database php Medoo
Depan:Apakah Teknologi Hammer Big Bang menjiplak Zhong Yingpin?
Diposting pada 17/07/2017 10.55.05 |
Terima kasih telah berbagi kata segmentasi hal yang penting pada sistem CMS
Sanggahan:
Semua perangkat lunak, materi pemrograman, atau artikel yang diterbitkan oleh Code Farmer Network hanya untuk tujuan pembelajaran dan penelitian; Konten di atas tidak boleh digunakan untuk tujuan komersial atau ilegal, jika tidak, pengguna akan menanggung semua konsekuensi. Informasi di situs ini berasal dari Internet, dan sengketa hak cipta tidak ada hubungannya dengan situs ini. Anda harus sepenuhnya menghapus konten di atas dari komputer Anda dalam waktu 24 jam setelah pengunduhan. Jika Anda menyukai program ini, harap dukung perangkat lunak asli, pembelian pendaftaran, dan dapatkan layanan asli yang lebih baik. Jika ada pelanggaran, silakan hubungi kami melalui email.

Mail To:help@itsvse.com