morpher.ru 8 (499) 647 86 54
nowhere@morpher.ru
 
 
Мой морфер

Склонение по падежам на Java

Пример вызова веб-сервиса склонения по падежам 2.0 на Java:

import javax.xml.parsers.*; import org.w3c.dom.*; import org.xml.sax.SAXException; import java.io.IOException; public class Main { public static void main(String[] args) throws java.lang.Exception { String phrase = "пилот международной космической станции"; Morpher morpher = new Morpher(phrase); String padeg = "Т"; // русская буква Т - творительный System.out.println("И: " + phrase); System.out.println(padeg + ": " + morpher.getCase(padeg)); } } class Morpher { private Document doc = null; public Morpher(String phrase) throws IOException, SAXException, ParserConfigurationException { DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); String url = "http://api.morpher.ru/WebService.asmx/GetXml?s="; doc = builder.parse(url + phrase); } public String getCase(String padeg) { String result = ""; Element root = doc.getDocumentElement(); NodeList nodes = root.getChildNodes(); for (int x = 0; x < nodes.getLength(); x++) { Node item = nodes.item(x); if (item instanceof Element) { Element el = (Element)item; if (el.getTagName().equals(padeg)) { result = ((Text)el.getFirstChild()).getData(); } } } return result; } }

Пример основан на коде Леонида Воронина из его статьи «Библиотека для склонения по падежам».

Программа выдает следующий текст:

$java -Xmx128M -Xms16M Main 
И: пилот международной космической станции
Т: пилотом международной космической станции

Проверить работоспособность примера можно на сайте compileonline.com. Просто скопируйте текст примера на этот сайт и нажмите кнопку Compile & Execute в верхнем-левом углу окна.

Веб-сервис реализует также склонение ФИО, должностей, названий товаров, городов и произвольных словосочетаний на русском и украинском языках (на украинском только ФИО), а также функцию прописи чисел.



 

Библиотеки

Заметили опечатку? Выделите слово мышкой и нажмите Ctrl-Enter. Система Orphus

© Сергей Слепов, 2003 - 2017. Перепечатка материалов сайта только с разрешения автора.