Есть ли синтаксический анализатор естественного языка для даты / времени в JavaScript? - PullRequest
23 голосов
/ 16 июня 2009

Есть ли синтаксический анализатор естественного языка для даты / времени в javascript?

Ответы [ 5 ]

23 голосов
/ 04 октября 2011

SugarJS поддерживает синтаксический анализ некоторых дат и времени на естественном языке.

Вы можете перейти к живому примеру здесь: http://sugarjs.com/dates

Например, он поддерживает следующие входные данные:

  • послезавтра
  • 2 недели с понедельника
  • 25 мая следующего года

Затем можно преобразовать результат в различные форматы даты или использовать API для дальнейшей обработки даты.

22 голосов
/ 28 ноября 2012

Я также разработал небольшую библиотеку chrono для разбора даты в Javascript. Я также добавляю функцию разбора диапазона дат (например, «12 ноября - 13 декабря 2012 года»)

Вы можете зарегистрироваться здесь .

9 голосов
/ 16 июня 2009

Удовлетворяет ли Date.js ваши потребности? Или вы ищете что-то еще?

2 голосов
/ 02 июля 2018

Для узла я нашел хроно , чтобы хорошо работать

Chrono поддерживает большинство форматов даты и времени, таких как:

  • Сегодня, завтра, вчера, в прошлую пятницу и т. Д.
  • 17 августа 2013 г. - 19 августа 2013 г.
  • В эту пятницу с 13:00 до 16:00
  • 5 дней назад
  • 2 недели спустя
  • Сб 17 августа 2013 18:40:39 GMT + 0900 (JST)
  • 2014-11-30T08: 15: 30-05: 30
0 голосов
/ 28 декабря 2011

Вы можете использовать перевод даты в jQuery, получить номер дня и месяца и выбрать день из дней выбора даты.

Вы можете добавить значения к этому объекту и загрузить до 60 языков, я думаю. (Объект ниже не завершен, я удалил некоторый код, чтобы упростить его).

$.datepicker.regional['sv'] = { 
  monthNames:['Januari','Februari','Mars','April','Maj','Juni','Juli','Augusti','September','Oktober','November','December'],
  monthNamesShort: ['Jan','Feb','Mar','Apr','Maj','Jun','Jul','Aug','Sep','Okt','Nov','Dec'],
  dayNamesShort: ['Sön','Mån','Tis','Ons','Tor','Fre','Lör'],
  dayNames: ['Söndag','Måndag','Tisdag','Onsdag','Torsdag','Fredag','Lördag'],
  dayNamesMin: ['Sö','Må','Ti','On','To','Fr','Lö']
};

Теперь получите номер дня и месяца

var dateObject = new Date();
var day = dateObject.getDay();
var month = dateObject.getMonth();
var monthText = $.datepicker.regional['sv']['monthNames'][month];
var dayText = $.datepicker.regional['sv']['dayNames'][day];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...