Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
忽略PHP中某个字符后字符串的其余部分_Php_String_Preg Match - Fatal编程技术网

忽略PHP中某个字符后字符串的其余部分

忽略PHP中某个字符后字符串的其余部分,php,string,preg-match,Php,String,Preg Match,如何忽略字符串中某个部分之后的所有内容 挑战在于字符串是可变的,并且不会每次都相同 下面是我想做的一个例子: 这是我想读的字符串部分 我不想从现在开始读任何东西 (忽略所有这些)在2012年1月15日上午11:55的《太阳报》上写道: 然后我只想返回我想读的部分,这样我就可以检查它,并用这些数据做我需要的事情……问题是,2012年1月15日11:55的太阳报写道:“总是会不同和变化……所以我想我必须使用preg_匹配来找到这个短语?不太清楚…谢谢你的帮助 我只是想做点别的事情来让这一切顺利 我

如何忽略字符串中某个部分之后的所有内容

挑战在于字符串是可变的,并且不会每次都相同

下面是我想做的一个例子:


这是我想读的字符串部分

我不想从现在开始读任何东西

(忽略所有这些)在2012年1月15日上午11:55的《太阳报》上写道:

然后我只想返回我想读的部分,这样我就可以检查它,并用这些数据做我需要的事情……问题是,2012年1月15日11:55的太阳报写道:“总是会不同和变化……所以我想我必须使用preg_匹配来找到这个短语?不太清楚…谢谢你的帮助

我只是想做点别的事情来让这一切顺利


我所做的是检查邮件正文中的某些单词或短语,然后在找到短语时执行特定任务……我已经写了这部分内容。如果在字符串中找到一个特定短语,我可能需要它停止检查字符串的其余部分。废话…实际上,只有在第一部分中找到短语时,这才有效…如果在第一部分中找不到短语,那么脚本将继续检查字符串,它可能会在第二部分中找到我要查找的短语,这将导致我的功能无法正确执行。只是想一想……

看看文档:


这将在2012年1月17日星期二下午6:05剪切字符串,并返回日期之前的文本。

这将是分隔符。。。2012年1月15日,太阳报,上午11:55,《信息》写道:我想忽略这件事以及之后的一切。正如你所看到的,这个分隔符总是不同的……在这种情况下我该如何设置它?@JeffLong-Erm,如果你不知道分隔符将是什么,那么就无法检索字符串的特定部分。如果您有多个已知的分隔符,那么只需添加If/elsestatements@JeffLong-你能再给我举个例子吗?比如,如果你有一个特定的字符串模式,比如如果在上午/下午的时间总是有天、月、年或者其他一些东西,那么总是会有?是的,日期应该总是有,还有其他人可以帮忙吗?:)
$string = "This SHOULD be displayed    On Tue, Jan 17, 2012 at 6:05 PM   I wrote: And this should NOT be displayed";
$output = array();

preg_match("/On (\w{3}), (\w{3}) (\d{2}), (\d{4}) at (\d{1,2}:\d{2}) (\w{2})/", $string, $output);
$string = explode($output[0], $string);
$string = trim($string[0]);