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