Sur la base de j'ai essayé le traitement OCR d'un fichier PDF avec Java, j'ai analysé les mots fréquemment utilisés du spécialiste de la sécurité AM2.
JapaneseAnalyser.java
package jpn;
import java.nio.charset.Charset;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.List;
import java.util.stream.Collectors;
import org.atilika.kuromoji.Token;
import org.atilika.kuromoji.Tokenizer;
public class JapaneseAnalyser {
    public static void main(String[] args) throws Exception{
    	//parse_1.Le résultat de la lecture OCR du papier de questions de Security Specialist AM 2 est stocké dans txt
        String input = Files.lines(Paths.get("parse_1.txt"), Charset.forName("MS932"))
        .reduce((s,v)->s+v.replaceAll("\\r\\n", "").trim()).get();
        analysis(input);
    }	
    public static void analysis(String s){
        Tokenizer tokenizer = Tokenizer.builder().build();
        List<Token> tokens = tokenizer.tokenize(s);
        tokens
            .stream()
            .filter(a ->(a.getPartOfSpeech().indexOf("nom")>=0))
            .map(e -> e.getSurfaceForm())
            .sorted()
            .collect(
    				Collectors.groupingBy(b->b,
    						Collectors.summingInt(b->1))
    				)
            .forEach((m1,m2)->System.out.println(String.format("Fréquence d'apparition%d Mot apparaissant: %s",m2,m1)));
    }
}
Recommended Posts