⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 germanstemmer.java

📁 linux系统下的分词软件
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
// This file was generated automatically by the Snowball to Java compilerpackage org.tartarus.snowball.ext;import org.tartarus.snowball.Among; /**  * This class was automatically generated by a Snowball to Java compiler   * It implements the stemming algorithm defined by a snowball script.  */public class germanStemmer extends org.tartarus.snowball.SnowballStemmer {private static final long serialVersionUID = 1L;        private final static germanStemmer methodObject = new germanStemmer ();                private final static Among a_0[] = {                    new Among ( "", -1, 6, "", methodObject ),                    new Among ( "U", 0, 2, "", methodObject ),                    new Among ( "Y", 0, 1, "", methodObject ),                    new Among ( "\u00E4", 0, 3, "", methodObject ),                    new Among ( "\u00F6", 0, 4, "", methodObject ),                    new Among ( "\u00FC", 0, 5, "", methodObject )                };                private final static Among a_1[] = {                    new Among ( "e", -1, 1, "", methodObject ),                    new Among ( "em", -1, 1, "", methodObject ),                    new Among ( "en", -1, 1, "", methodObject ),                    new Among ( "ern", -1, 1, "", methodObject ),                    new Among ( "er", -1, 1, "", methodObject ),                    new Among ( "s", -1, 2, "", methodObject ),                    new Among ( "es", 5, 1, "", methodObject )                };                private final static Among a_2[] = {                    new Among ( "en", -1, 1, "", methodObject ),                    new Among ( "er", -1, 1, "", methodObject ),                    new Among ( "st", -1, 2, "", methodObject ),                    new Among ( "est", 2, 1, "", methodObject )                };                private final static Among a_3[] = {                    new Among ( "ig", -1, 1, "", methodObject ),                    new Among ( "lich", -1, 1, "", methodObject )                };                private final static Among a_4[] = {                    new Among ( "end", -1, 1, "", methodObject ),                    new Among ( "ig", -1, 2, "", methodObject ),                    new Among ( "ung", -1, 1, "", methodObject ),                    new Among ( "lich", -1, 3, "", methodObject ),                    new Among ( "isch", -1, 2, "", methodObject ),                    new Among ( "ik", -1, 2, "", methodObject ),                    new Among ( "heit", -1, 3, "", methodObject ),                    new Among ( "keit", -1, 4, "", methodObject )                };                private static final char g_v[] = {17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 32, 8 };                private static final char g_s_ending[] = {117, 30, 5 };                private static final char g_st_ending[] = {117, 30, 4 };        private int I_x;        private int I_p2;        private int I_p1;                private void copy_from(germanStemmer other) {                    I_x = other.I_x;                    I_p2 = other.I_p2;                    I_p1 = other.I_p1;                    super.copy_from(other);                }                private boolean r_prelude() {            int v_1;            int v_2;            int v_3;            int v_4;            int v_5;            int v_6;                    // (, line 28                    // test, line 30                    v_1 = cursor;                    // repeat, line 30                    replab0: while(true)                    {                        v_2 = cursor;                        lab1: do {                            // (, line 30                            // or, line 33                            lab2: do {                                v_3 = cursor;                                lab3: do {                                    // (, line 31                                    // [, line 32                                    bra = cursor;                                    // literal, line 32                                    if (!(eq_s(1, "\u00DF")))                                    {                                        break lab3;                                    }                                    // ], line 32                                    ket = cursor;                                    // <-, line 32                                    slice_from("ss");                                    break lab2;                                } while (false);                                cursor = v_3;                                // next, line 33                                if (cursor >= limit)                                {                                    break lab1;                                }                                cursor++;                            } while (false);                            continue replab0;                        } while (false);                        cursor = v_2;                        break replab0;                    }                    cursor = v_1;                    // repeat, line 36                    replab4: while(true)                    {                        v_4 = cursor;                        lab5: do {                            // goto, line 36                            golab6: while(true)                            {                                v_5 = cursor;                                lab7: do {                                    // (, line 36                                    if (!(in_grouping(g_v, 97, 252)))                                    {                                        break lab7;                                    }                                    // [, line 37                                    bra = cursor;                                    // or, line 37                                    lab8: do {                                        v_6 = cursor;                                        lab9: do {                                            // (, line 37                                            // literal, line 37                                            if (!(eq_s(1, "u")))                                            {                                                break lab9;                                            }                                            // ], line 37                                            ket = cursor;                                            if (!(in_grouping(g_v, 97, 252)))                                            {                                                break lab9;                                            }                                            // <-, line 37                                            slice_from("U");                                            break lab8;                                        } while (false);                                        cursor = v_6;                                        // (, line 38                                        // literal, line 38                                        if (!(eq_s(1, "y")))                                        {                                            break lab7;                                        }                                        // ], line 38                                        ket = cursor;                                        if (!(in_grouping(g_v, 97, 252)))                                        {                                            break lab7;                                        }                                        // <-, line 38                                        slice_from("Y");                                    } while (false);                                    cursor = v_5;                                    break golab6;                                } while (false);                                cursor = v_5;                                if (cursor >= limit)                                {                                    break lab5;                                }                                cursor++;                            }                            continue replab4;                        } while (false);                        cursor = v_4;                        break replab4;                    }                    return true;                }                private boolean r_mark_regions() {            int v_1;                    // (, line 42                    I_p1 = limit;                    I_p2 = limit;                    // test, line 47                    v_1 = cursor;                    // (, line 47                    // hop, line 47                    {                        int c = cursor + 3;                        if (0 > c || c > limit)                        {                            return false;                        }                        cursor = c;                    }                    // setmark x, line 47                    I_x = cursor;                    cursor = v_1;                    // gopast, line 49                    golab0: while(true)                    {                        lab1: do {                            if (!(in_grouping(g_v, 97, 252)))                            {                                break lab1;                            }                            break golab0;                        } while (false);                        if (cursor >= limit)                        {                            return false;                        }                        cursor++;                    }                    // gopast, line 49                    golab2: while(true)                    {                        lab3: do {                            if (!(out_grouping(g_v, 97, 252)))                            {                                break lab3;                            }                            break golab2;                        } while (false);                        if (cursor >= limit)                        {                            return false;                        }                        cursor++;                    }                    // setmark p1, line 49                    I_p1 = cursor;                    // try, line 50                    lab4: do {                        // (, line 50                        if (!(I_p1 < I_x))                        {                            break lab4;                        }                        I_p1 = I_x;                    } while (false);                    // gopast, line 51                    golab5: while(true)                    {                        lab6: do {                            if (!(in_grouping(g_v, 97, 252)))                            {                                break lab6;                            }                            break golab5;                        } while (false);                        if (cursor >= limit)                        {                            return false;                        }                        cursor++;                    }                    // gopast, line 51                    golab7: while(true)                    {                        lab8: do {                            if (!(out_grouping(g_v, 97, 252)))                            {                                break lab8;                            }                            break golab7;                        } while (false);                        if (cursor >= limit)                        {                            return false;                        }                        cursor++;                    }                    // setmark p2, line 51                    I_p2 = cursor;                    return true;                }                private boolean r_postlude() {            int among_var;            int v_1;                    // repeat, line 55                    replab0: while(true)                    {                        v_1 = cursor;                        lab1: do {                            // (, line 55                            // [, line 57                            bra = cursor;                            // substring, line 57                            among_var = find_among(a_0, 6);                            if (among_var == 0)                            {                                break lab1;                            }                            // ], line 57                            ket = cursor;                            switch(among_var) {                                case 0:                                    break lab1;                                case 1:                                    // (, line 58                                    // <-, line 58                                    slice_from("y");                                    break;                                case 2:                                    // (, line 59                                    // <-, line 59                                    slice_from("u");                                    break;                                case 3:                                    // (, line 60                                    // <-, line 60                                    slice_from("a");                                    break;                                case 4:                                    // (, line 61                                    // <-, line 61                                    slice_from("o");                                    break;                                case 5:                                    // (, line 62                                    // <-, line 62                                    slice_from("u");                                    break;                                case 6:                                    // (, line 63                                    // next, line 63                                    if (cursor >= limit)                                    {                                        break lab1;                                    }                                    cursor++;                                    break;                            }                            continue replab0;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -