Formatlanmış tarih / saati dizeleri içine doğal dil tarih / saat değerlerini ayrıştırma

4 Cevap php

Kullanıcıların bir giriş alanına tarih ve saat değerleri yazın izin çalışıyorum. Bazı örnekler şunlardır:

Tomorrow at 3pm
Now
Today at 1pm
Next tuesday 4pm

Nasıl tarih / saati dizeleri gibi okunabilir metin ayrıştırma hakkında gitmek istiyorsunuz?

E.g. dd/mm/yyyy hh:mm

Bu jquery kullanarak istemci tarafında yapılabilir veya php ajax yapılmalıdır?

Herhangi bir tavsiye veya anlayışlar için şimdiden teşekkürler :)

4 Cevap

Thanks Sinan and vsr. I voted up for both your answers. I was initially very excited with what datejs has to offer, but it seems limited in its ability to process natural language date time. It doesn't handle date + time very well.

timeapi.org umut verici görünüyor, ama yakut kullanır gibi, ve API sürümü çok güvenilir görünmüyor bir hizmet dayanıyor.

Ben PHP'nin strtotime ile test edilmiş ve oldukça iyi daha doğal dil tarih saat işlemek olabilir bulundu. Php kullanarak beni çok desteklenen diğer doğal dil terimleri eklemenizi sağlar. Ben kullanıcı doğal dil tarih saat işlemek için ajax benimseyerek olacak gibi Yani görünüyor.

Benim yaklaşım hakkında görüşlerini duymak isterim. :) Tekrar teşekkürler!

Kütüphane tarihleri ​​ile tüm bu korkak şeyler yapıyor javascript açık kaynak vardır. Eğer kontrol edebilirsiniz http://www.datejs.com/

Ben datejs.com için oy rağmen, başka bir seçenek timeapi.org olduğunu.

timeapi.org tarih / zaman doğal dil sorguları dönüştürmek için bir JSONP API var.

Ben bu Is there a natural language parser for date/times in javascript? bir çift olduğunu düşünüyorum

Ben sadece o soru için verilen ettik cevabı aşağıdadır:

SugarJS tarih ve zamanlarda bazı doğal dil ayrıştırma destekler.

Burada canlı örnek atlayabilirsiniz: http://sugarjs.com/dates

Örneğin, aşağıdaki girişler destekler:

  • yarından sonraki gün
  • Pazartesi 2 hafta
  • Gelecek yıl 25 Mayıs

Daha sonra farklı tarih biçimleri içine sonucu gizli ya da daha fazla tarih işlemek için API kullanabilirsiniz.