正则表达式匹配两个数字之间带有连字符的字符串

Regex to match string with hyphen sign between two numbers

例如,如果有这个字符串:

what is 4-3,如何在PHP中完成检查一个数字减去另一个数字是否在字符串中,同时又不会在you're pig-brained这样的情况下失败。是否可以在正则表达式中创建这样的匹配系统?

简单:

preg_match('/\d+\-\d+/', $string, $match);
var_dump($matches);

如果您想匹配所有此类模式,请使用:

preg_match_all('/\d+\-\d+/', $string, $matches);
var_dump($matches);