生年月日または死亡日を検索する必要がある巨大なテキスト ウォールがあります。日付は通常、次の形式で表示されます。
もう少しテキスト。1942 年 12 月 5 日サムナーで生まれ 、その他のテキスト
また
1922 年 8 月 8 日に州、市で生まれたいくつかのテキスト、その他のテキスト
また
一部のテキストは2010 年 11 月 3 日水曜日に死亡、その他のテキスト
また
一部のテキストは2008 年 12 月 19 日金曜日に他界しました。
また
一部のテキストは2007 年 1 月 11 日に死亡し 、その他のテキスト
要するに、日付は通常、生まれた単語の数単語後に来ます。
この日付を取得する最善の方法は正規表現を使用することだと思いますが、ここで間違っている場合は修正してください。
日付を取得するために思いついたのは次のとおりですが、日付だけを取得するにはまだほど遠いです:
(?=born\s|died\s|passed\saway\s)(\w+.*)(\w+\s\d+,\s\d+)
問題は、私の正規表現が完全に機能しないことです。それは月の単語を食べます。これを修正するにはどうすればよいですか、またはこれを行うためのより良い正規表現または方法がありますか?
以下を使用して日付のみを取得できることはわかっていますが、イベントについても知る必要があります。
(\w+\s[0-9]{1,2},\s[0-9]{2,4})