3

私は次のようなテキスト形式の日付を持っています:

6 weeks ago, 2012 April 18 15:08:18
13 weeks ago, 2012 March 01 17:33:52

主な問題は、このテキストが実際にはロシア語であるためweeks ago、同じテキストがロシア語である代わりに存在することです。そして、同じことが月にも当てはまります(可能な値の辞書を作成する必要があるようです)。

どうやって始めたらいいのかわからない。正規表現を使用する必要がありますか?他に何かありますか?

4

1 に答える 1

2

ロシア語ではなくポーランド語:

var dateStr = "6 tygodni temu, 2012 kwiecień 18 15:08:18"

FirefoxはUnicode文字の抽出に問題はありません(迅速で汚い正規表現):

var regex = /(\d+) ty.* temu, (\d+) (.*) (\d+) (\d{2}):(\d{2}):(\d{2})/

解析:

var result = dateStr.match(regex);

result

[
  "6 tygodni temu, 2012 kwiecień 18 15:08:18",
  "6",
  "2012",
  "kwiecień",
  "18", 
  "15",
  "08",
  "18"
]

私はロシア語を知りませんが、あなたはいくつかの余分な言語学的な仕事をする必要があるかもしれません。たとえば、ポーランド語では「1tydzień 」がありますが、「2 tygodnie」、さらには「5 tygodni」(別の形式に注意してください)があります。

于 2012-06-03T10:13:32.407 に答える