Dieser Artikel ist ein Spiegelartikel der maschinellen Übersetzung, bitte klicken Sie hier, um zum Originalartikel zu springen.

Ansehen: 23439|Antwort: 1

[Quelle] Pangu Wortsegmentierungsassistent

[Link kopieren]
Veröffentlicht am 17.07.2017 10:02:38 | | |
mit System;
mit System.Collections.Generic;
mit System.Linq;
mit System.Text;
unter Verwendung von System.Threading.Tasks;
unter Verwendung von PanGu.Dict;
mit PanGu.Framework;
mit PanGu.Match;
mit PanGu.Setting;
unter Verwendung von PanGu.HighLight;
mit Lucene.Net.Analysis;
mit System.IO;
mithilfe von PanGu;
unter Verwendung von System.Configuration;

Namensraum Pangu.Helper
{
    öffentliche Klasse PanguHelper
    {

        private flüchtige statische PanguHelper _instance = null;
        privates statisches Readonly-ObjektLockHelper = neues Objekt();
        private PanguHelper() { }

        /// <summary>
        [Standard verwendet pangu.xml Profil unter demselben Pfad]
        /// </summary>
        /// <returns></returns>
        öffentliche statische PanguHelper ShareHelper
        {
            Erhalten
            {
                wenn (_instance == null)
                {
                    Lock (lockHelper)
                    {
                        wenn (_instance == null)
                        {
                            _instance = neuer PanguHelper();
                            string configFile = ConfigurationManager.AppSettings["PANGU_CONFIG"] + "";
                            if (configFile != "")
                            {
                                _instance. Use(configFile);
                            }
                        }
                    }
                }

                _instance zurückkehren;
            }
        }

        /// <summary>
        Initialisieren Sie die angegebene Konfigurationsdatei
        /// </summary>
        <param name="configFile"> pangu configuration file</param>
        public void Use(string configFile)
        {
            PanGu.Segment.Init(configFile);
        }

        /// <summary>
        Hol dir eine Wortartbeschreibung
        /// </summary>
        <param name="pos"> Wortart-Aufzählung</param>
        /// <returns></returns>
        public string GetPosDescrip{filter}t(POS pos)
        {
            Switch (POS)
            {
                Fall-POS. POS_UNK: Rückgabe "unbekannte Wortart;"
                Fall-POS. POS_D_K: "nachfolgende Komponente" zurückgeben;
                Fall-POS. POS_D_H: "vorangehende Komponente" zurückgeben;
                Fall-POS. POS_A_NZ: "anderer Eigenname" zurückgeben;
                Fall-POS. POS_A_NX: "ausländischer Charakter" zurückgeben;
                Fall-POS. POS_A_NR: "Name der Person" zurückgeben;
                Fall-POS. POS_D_Z: "Statuswort" zurückgeben;
                Fall-POS. POS_A_NT: Rückgabe des "Körpers der Institutionen";
                Fall-POS. POS_A_NS: "Ortsname" zurückgeben;
                Fall-POS. POS_D_Y: Return "Mood Word Mood Morphem";
                Fall-POS. POS_D_X: geben "nicht-morphämisches Wort" zurück;
                Fall-POS. POS_D_W: "Zeichensetzung" zurückgeben;
                Fall-POS. POS_D_T: "Wort der Zeit" zurückgeben;
                Fall-POS. POS_D_S: "Ortswort" zurückgeben;
                Fall-POS. POS_D_V: "Verbmorphem" zurückgeben;
                Fall-POS. POS_D_U: Return "Particle Particle Morphem";
                Fall-POS. POS_D_R: Return "Pronomenpronomenmorphem";
                Fall-POS. POS_A_Q: "Quantor-Quantor-Morphem" zurückgeben;
                Fall-POS. POS_D_P: "Präposition" zurückgeben;
                Fall-POS. POS_D_MQ: "Quantor" zurückgeben;
                Fall-POS. POS_A_M: geben Sie "numeral, numeral, numeral" zurück;
                Fall-POS. POS_D_O: "Onomatopoeie" zurückzugeben;
                Fall-POS. POS_D_N: Return "Nomenmorphem";
                Fall-POS. POS_D_F: zurück "Azimutwort-Azimutmorphem";
                Fall-POS. POS_D_E: "Interjektionsmorphem" zurückgeben;
                Fall-POS. POS_D_L: "Idiom" zurückgeben;
                Fall-POS. POS_D_I: "Idiom" zurückgeben;
                Fall-POS. POS_D_D: "Adverb Adverb Morphem" zurückgeben;
                Fall-POS. POS_D_C: "konjunktive Konjunktionsmorphem" zurückgeben;
                Fall-POS. POS_D_B: zurückgeben "um Wörter zu unterscheiden, um Morpheme zu unterscheiden";
                Fall-POS. POS_D_A: geben "Adjektivmorphem" zurück;
            }
            Return "unbekannte Wortart";
        }



        /// <summary>
        Erhalte das Partizip [Original Wordinfo]
        /// </summary>
        <param name="content"> der Inhalt des zu trennenden Wortes</param>
        <param name="matchOptions"> verwende die Matching-Optionen</param>
        <param name="matchParameter"> verwende den Match-Parameter</param>
        /// <returns></returns>
        öffentliche ICollection<WordInfo> GetSegmentWords (String-Inhalt, MatchOptions matchOptions = null,
           MatchParameter matchParameter = null)
        {
            Segmentsegment = neues Segment();
            ICollektionswörter<WordInfo> = Segment. DoSegment(content, matchOptions, matchParameter);
            Erwidern Sie Worte;
        }



        /// <summary>
        Partizipien erhalten
        /// </summary>
        <param name="content"> der Inhalt des zu trennenden Wortes</param>
        <param name="matchOptions"> Match-Optionen werden verwendet, nicht standardmäßig</param>
        <param name="matchParameter" > den passenden Parameter verwenden, nicht standardmäßig</param>
        öffentliche<string> Liste GetSplitWords (String-Inhalt, MatchOptions matchOptions = null, MatchParameter matchParameter = null)
        {
            Segmentsegment = neues Segment();
            ICollektionswörter<WordInfo> = Segment. DoSegment (Inhalt, MatchOptions, MatchParameter);
            Liste<string> = neue Liste<string>();
            foreach (WordInfo-Wort in Wörtern)
            {
                Liste. Add(word. Word);
            }
            Rückkehrliste;
        }


        /// <summary>
        Erhalten Sie das Partizip der angegebenen Worthäufigkeit
        /// </summary>
        <param name="content"> der Inhalt des zu trennenden Wortes</param>
        <Param Name="Frequenz"> Wortfrequenz</param>
        <param name="matchOptions"> Match-Optionen werden verwendet, nicht standardmäßig</param>
        <param name="matchParameter" > den passenden Parameter verwenden, nicht standardmäßig</param>
        /// <returns></returns>
        öffentliche Liste<string> GetSplitWordsByFrequency(String-Inhalt, doppelte Frequenz, MatchOptions matchOptions = null,
            MatchParameter matchParameter = null)
        {
            Segmentsegment = neues Segment();
            ICollektionswörter<WordInfo> = Segment. DoSegment(content, matchOptions, matchParameter);

            Liste<string> = neue Liste<string>();
            foreach (WordInfo-Wort in Wörtern)
            {
                wenn (Frequenz == Wort. Frequenz)
                {
                    Liste. Add(word. Word);
                }
            }
            Rückkehrliste;
        }


        /// <summary>
        Nehmen Sie ein Partizip mit einem bestimmten Gewicht
        /// </summary>
        <param name="content"> der Inhalt des zu trennenden Wortes</param>
        <param name="Rang"> Gewicht</param>
        <param name="matchOptions"> Match-Optionen werden verwendet, nicht standardmäßig</param>
        <param name="matchParameter" > den passenden Parameter verwenden, nicht standardmäßig</param>
        /// <returns></returns>
        öffentliche Liste<string> GetSplitWordsByRank(String-Inhalt, int-Rang, MatchOptions matchOptions = null,
            MatchParameter matchParameter = null)
        {
            Segmentsegment = neues Segment();
            ICollektionswörter<WordInfo> = Segment. DoSegment(content, matchOptions, matchParameter);

            Liste<string> = neue Liste<string>();
            foreach (WordInfo-Wort in Wörtern)
            {
                wenn (Rang == Wort. Rang)
                {
                    Liste. Add(word. Word);
                }
            }
            Rückkehrliste;
        }


        /// <summary>
        Höhepunkt
        /// </summary>
        <param name="keyword"> die Zeichenkette hervorheben</param>
        <param name="content">content</param>
        <param name="fragmentSize"> die Anzahl der Zeichen für jedes Zusammenfassungsfeld</param>
        <returns>Hervorgehobene Inhalte</returns>
        öffentlicher statischer String HighLight (String-Schlüsselwort, String-Inhalt, int fragmentSize)
        {
            Erstellen Sie einen HTML-Code mit dem Parameter, der den Suchbegriff hervorhebt.  
            SimpleHTMLFormatter simpleHTMLFormatter = neuer SimpleHTMLFormatter("<font color='red'>", "</font>");
            Hervorhebung erstellen, HTML-Code eingeben und das Pangu-Objekt Semgent  
            Highlighter höher = neuer Highlighter(simpleHTMLFormatter, neuer Segment());
            Setzen Sie die Anzahl der Zeichen für jedes Zusammenfassungsfeld  
            höher. FragmentSize = FragmentSize;
            Saiten-HighlightStr = höher. GetBestFragment (Schlüsselwort, Inhalt);

            wenn (String. IsNullOrEmpty(highlightStr))
            {
                Inhalte zurückzugeben;
            }
            Rückkehr-HighlightStr;
        }



    }

}


Punktzahl

Anzahl der Teilnehmer1MB+2 beitragen+2 Zusammenbruch Grund
Kleiner Abschaum + 2 + 2 Sehr mächtig!

Alle Bewertungen sehen





Vorhergehend:php-Datenbankzugriffstool Medoo
Nächster:Hat Hammer Technology Big Bang Zhong Yingpin plagiiert?
Veröffentlicht am 17.07.2017 10:55:05 |
Danke, dass du das Wort Segmentierung geteilt hast, das im CMS-System unerlässlich ist
Verzichtserklärung:
Alle von Code Farmer Network veröffentlichten Software, Programmiermaterialien oder Artikel dienen ausschließlich Lern- und Forschungszwecken; Die oben genannten Inhalte dürfen nicht für kommerzielle oder illegale Zwecke verwendet werden, andernfalls tragen die Nutzer alle Konsequenzen. Die Informationen auf dieser Seite stammen aus dem Internet, und Urheberrechtsstreitigkeiten haben nichts mit dieser Seite zu tun. Sie müssen die oben genannten Inhalte innerhalb von 24 Stunden nach dem Download vollständig von Ihrem Computer löschen. Wenn Ihnen das Programm gefällt, unterstützen Sie bitte echte Software, kaufen Sie die Registrierung und erhalten Sie bessere echte Dienstleistungen. Falls es eine Verletzung gibt, kontaktieren Sie uns bitte per E-Mail.

Mail To:help@itsvse.com