PHP substr-从字符串中提取数字

PHP substr-从字符串中提取数字,php,substr,Php,Substr,我需要从CSV文件中的每一行提取突出显示的数字 目前,我正在循环行和拆分/字符上的行,因为这在每行中只出现一次,但如何删除这些数字周围的所有内容,以便留下: 9/10 11月10日 11/12 如果你只想得到数字,你可以 但是如果您能够将整个文档作为单个字符串获取,那么您可以执行以下操作: 然后在$matches上循环如果只想获取数字,可以执行以下操作 但是如果您能够将整个文档作为单个字符串获取,那么您可以执行以下操作: 然后循环$matches谢谢,但似乎将左边的数字剥离为一位数9/10 0

我需要从CSV文件中的每一行提取突出显示的数字

目前,我正在循环行和拆分/字符上的行,因为这在每行中只出现一次,但如何删除这些数字周围的所有内容,以便留下:

9/10

11月10日

11/12


如果你只想得到数字,你可以

但是如果您能够将整个文档作为单个字符串获取,那么您可以执行以下操作:


然后在$matches上循环

如果只想获取数字,可以执行以下操作

但是如果您能够将整个文档作为单个字符串获取,那么您可以执行以下操作:


然后循环$matches

谢谢,但似乎将左边的数字剥离为一位数9/10 0/11 1/12 3/14-而且这些数字可能比双位数大得多。我只想补充一点,这里不需要m标志。它只与字符串的开头和结尾相关,例如使用^或$。基本上,它会更改这些字符串,使它们匹配行的开始和结束,而不是整个字符串的默认行为。拥有它没有什么坏处,我只是想提一下。否则,我会这么做的。@kb我通过在正则表达式中添加+符号修复了左边的数字问题。应该可以像需要的那样工作。@ArtisticPhoenix我将m标志作为suggested@rtrigoso-库尔,我已经超过你了,所以我会再做一次,但唉,我不能:谢谢,但似乎将左边的数字剥离为一个数字9/10 0/11 1/12 3/14,而且这些数字可能比两位数大得多。我只想补充一点,这里并不需要m标志。它只与字符串的开头和结尾相关,例如使用^或$。基本上,它会更改这些字符串,使它们匹配行的开始和结束,而不是整个字符串的默认行为。拥有它没有什么坏处,我只是想提一下。否则,我会这么做的。@kb我通过在正则表达式中添加+符号修复了左边的数字问题。应该可以像需要的那样工作。@ArtisticPhoenix我将m标志作为suggested@rtrigoso-库尔,我已经超过了你,所以我会再做一次,但唉,我做不到:你为什么不尝试使用~作为分隔符?你为什么不尝试使用~作为分隔符?
$re = '/(\d+\/\d+)/s';
$str = 'dfsadsfadsfads~~9/10~~lfkjdskfds';

preg_match($re, $str, $matches);
$re = '/(\d+\/\d+)/s';
$str = 'dfsadsfadsfads~~9/10~~lfkjdskfds\ndfsadsfadsfads~~9/10~~lfkjdskfds\n';

preg_match_all($re, $str, $matches, PREG_SET_ORDER, 0);