0

我有一个像这样的字符串:

Lorem Ipsum Dolor Sir 2013-10-22 Lorem Ipsum Dolor...

我应该如何约会?我只想要确定日期(yyyy-mm-dd)的文本部分。我试过preg_match了,但无法只得到文本的那部分。

4

3 回答 3

3
preg_match('/(\d{4}-\d{2}-\d{2})/', $text, $matches);
echo $matches[1];

\d - any digit
{4} require 4 of the previous match
\d{4}   - require 4 digits
于 2013-04-12T19:32:51.777 回答
1

括号内的匹配项放在 的第三个参数中preg_match,因此其中的第一项是整个匹配项,下一项是括号内的匹配项。

preg_match("/(\d{4}-\d{2}-\d{2})/", $text, $regs);
echo $regs[0]; // The whole match is in $regs[0]
echo $regs[1]; // The match inside the 1. parenthesis is in $regs[1]
于 2013-04-12T19:32:34.493 回答
1

您可以使用此正则表达式:

$str = 'Lorem Ipsum Dolor Sir 2013-10-22 Lorem Ipsum Dolor...';
if (preg_match('/(\d{4}-\d{2}-\d{2})/', $str, $match))
   echo $match[1] . "\n";
于 2013-04-12T19:35:19.960 回答