Pos tagger

Tagging text with Stanford POS Tagger in Java.
A  Stanford POS Tagger server for the e Stanford POS Tagger. Runs on a socket and waits for text to tag and returns the POS Tagged text.
 Stanford POS Tagger is used to tagging each word with its type such as verb, noun, Abjective etc.
Their many Pos tagger online is Available but we return this in pos tagger using java.
Stanford pos tagger java example, if you want to find all verbs in a sentence, 
 you can use Stanford POS Tagger.
public class ApplyTagger {

    public static void main(String[] args) {
        String data1 = "SMS language is similar to that used by those sending telegraphs that charged by the word. It seeks to use the fewest number of letters to produce ultra-concise words and sentiments in dealing with space, time and cost constraints of text messaging. This follows from how early SMS permitted only 160 characters and that carriers began charging a small fee for each message sent (and sometimes received). This, together with the difficulty and inefficiency in creating messages led the desire for a more economical language for the new medium";

        String sentence[] = data1.split("\\.");

        List allReviews = Arrays.asList(sentence);

        ArrayList seedWords = new ArrayList();
        ArrayList fresh = new ArrayList();

        /* Preprocessing */
        ArrayList slang1 = new ArrayList();
        ArrayList slang2 = new ArrayList();
        ArrayList stop1 = new ArrayList();

        edu.stanford.nlp.tagger.maxent.MaxentTagger ob = null;

        try {
            ob = new edu.stanford.nlp.tagger.maxent.MaxentTagger(".\\models\\left3words-distsim-wsj-0-18.tagger");

            File fe = new File("Slang.txt");
            FileInputStream fis = new FileInputStream(fe);
            byte data[] = new byte[fis.available()];
            fis.read(data);
            fis.close();

            String s1[] = new String(data).split("\n");

            for (int i = 0; i < s1.length; i++) {
                String g1[] = s1[i].trim().split("#");
                slang1.add(g1[0].trim());
                slang2.add(g1[1].trim());
            }

            File fe2 = new File("stopwords1.txt");
            FileInputStream fis2 = new FileInputStream(fe2);
            byte data2[] = new byte[fis2.available()];
            fis2.read(data2);
            fis2.close();

            String sg2[] = new String(data2).split("\n");

            for (int i = 0; i < sg2.length; i++) {
                stop1.add(sg2[i].trim());
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        //String remove="";
        for (int i = 0; i < allReviews.size(); i++) {
            String remove = "";
            String rev = allReviews.get(i).toString().toLowerCase().trim().replaceAll("[^\\w\\s]", "");     // replace all symbols

            String sp[] = rev.trim().split(" ");
            for (int j = 0; j < sp.length; j++) {
                String word = sp[j].trim();

                if (!(stop1.contains(word.trim()))) // Remove all stopwords
                {
                    if (slang1.contains(word.trim())) {
                        int ind1 = slang1.indexOf(word.trim());
     word = slang2.get(ind1).toString().trim();   
 // Change slang words to normal word
                    }
                    remove = remove + word + "    ";// My
                    String ret = ob.tagString(word.trim());// apply Maxent Tagger
                    //getting noun adjective
                    if (ret.trim().contains("/NN") || ret.trim().contains("/JJ")) {
                        System.err.println(ret);
                        String seed[] = ret.trim().split("\\/");
                        String seedWord = seed[0].trim();
                        String pos = seed[1].trim();
                        //getting only word e.g sms/NNS  split by / n getting 0  index value sms
  if ((pos.trim().equals("NN")) || (pos.trim().equals("NNP")) || pos.trim().contains("JJ"))
 // Extract Noun Singular
                        {
                            if (!(seedWords.contains(seedWord.trim()))) {
                                seedWords.add(seedWord.trim().toLowerCase());
                            } }} }}
            fresh.add(remove.trim());
// all word after remove stopwords
        }
    }}
Here is an Image of Output.
stanford pos tagger
Stanford pos tagger
OUTPUT


This is Video how to Stanford pos tagger java
Previous Post Next Post