【发布时间】:2012-05-27 14:29:04
【问题描述】:
我需要在“2012 年 5 月 27 日星期日早上 6 点 25 分”之前获取所有内容
我希望在“On xxx, xxx xx, xxxx at xx:xx xx”之前得到一切,
这里的问题是,5 月、27 日和 6 日的长度都是可变的。什么是这项工作的最佳工具。由于我缺乏正则表达式的经验,我正在尝试使用explode(),但它似乎不能在这里完成这项工作。正则表达式是我的最佳选择吗?
[编辑]
我最终使用了多种答案。我去了:
preg_match("/(.*)On\s+(Sun|Sat|Fri|Thu|Wed|Tue|Mon),\s+(一月|二月|三月|四月|五月|六月|七月|八月|九月|十月|十一月|十二月)\s+\d?\d,\s+\d{4}\s+at\s+\d?\d:\d\d\s+[AP]M,/i", $到,$end);
【问题讨论】:
-
为什么不将 strtotime() 与 date() 结合使用?
-
我还是不明白你在做什么。
-
充满值的字符串中的“之前”在哪里?
-
抱歉,不清楚。我正在尝试解析来自将 $_POST 密钥发送到我的脚本的外部服务器的电子邮件。我需要回复消息,但它与原始消息混淆。我能想到得到回复消息的唯一方法是在我上面放的东西之前抓住一切。
-
所以你有一个像这样的数据集“XXXXXXXXXX On Sun, May 27, 2012 at 6:25 AM”,你想得到 XXXXXXXXXX 吗?