我有一个字符串:
HELLO WORLD by Adam Smith于1920年出生于1890年;
我怎样才能检查1890年“出生”之后的那一年是否比1920年出版后的年份更大? 感谢
答案 0 :(得分:0)
要将数字与数字进行比较,请检查: http://php.net/manual/en/language.operators.comparison.php
答案 1 :(得分:0)
正则表达式可以从字符串中提取2个数字,然后比较2个数字。见Extract numbers from a string
答案 2 :(得分:0)
使用正则表达式从字母中提取数字并进行比较:
$str="HELLO WORLD by Adam Smith published 1920 born 1890";
$patt="/\d{4}/";
$res=preg_match_all($patt,$str,$matches);
if($matches[0] > $matches[1]){
echo 'Year of birth is before year of publishing';
}else{
echo 'Looks like time travelling: published before even born ...';
}
$匹配保留: 排列 ( [0] =>排列 ( [0] => 1920 [1] => 1890年 ) )
preg_match_all函数提取所有4位数字符链并将其放入数组$ matches中。 但你必须确定,这句话没有其他年份(或4位数的叮咬),并且公布的日期是句子中第一个和出生日期的第二个参数。