文字列から時刻を解析する最も良い方法は何ですか?regex/php:文字列から時間を解析しますか?
例文字列:「これは10:45です。これは10:48、10:49、10:50、22:15です」;
[0] = 10:45
[1] = 10時48
[2] = 10:49
[3] = 10:リターン期待
。 50
[4] = 22:15
お返事ありがとうございます!
文字列から時刻を解析する最も良い方法は何ですか?regex/php:文字列から時間を解析しますか?
例文字列:「これは10:45です。これは10:48、10:49、10:50、22:15です」;
[0] = 10:45
[1] = 10時48
[2] = 10:49
[3] = 10:リターン期待
。 50
[4] = 22:15
お返事ありがとうございます!
これは、あなたが望む出力を与えると時間の第1の位置と分の最初の位置の有効な値にあなたの時間/分の数字を制限します:
$y = "this is 10:45 this is 10:48, 10:49, 10:50, 22:15";
preg_match_all("/(([0-1]\d|2[0-3]):[0-5]\d)/",$y,$matches);
print_r($matches[1]);
/*
Outputs:
Array ([0] => 10:45 [1] => 10:48 [2] => 10:49 [3] => 10:50 [4] => 22:15)
/*
これはかなり単純なケースのようです。あなたは$matches
アレイ内のすべてのあなたの一致を持つことになります
preg_match_all('/\d{2}:\d{2}/', $string, $matches);
: "\ D \ D// \ D \ D" とpreg_match_allしてみてください。
場合にのみ、すべての一致を持っています'preg_match_all()'を使用します。 –
@Chris Lutz - 良い点。 – RaYell
あなたがおそらく正規表現を '/([0-1] \ d | 2 [0-3]):[0-5] \ d /'に変更する必要があるのであれば、 '27:00' – RaYell
これはすばらしい改善です。追加するために私の答えを編集します。ありがとう。 – zombat