fork download
  1. <?php
  2.  
  3. $date_day_pattern = '(?:0[1-9]|[12][0-9]|3[01])';
  4. $date_month_pattern = '(?:0[1-9]|1[0-2])';
  5. $date_year_pattern = '(?:[12][0-9]|20[12][0-9])';
  6. $input = "dksj dkk\n49.. dk /ak 01-05-2012 hey\nkdks";
  7. $prefix_pattern = '^(.*?)\s*';//(?<=[^\n]*)';
  8. $date_pattern = "(?<!\d|\d )($date_day_pattern)[^\d\n]?($date_month_pattern)[^\d\n]?($date_year_pattern)(?!\d)";
  9. echo "$date_pattern\n";
  10. preg_match("/$prefix_pattern$date_pattern/m", $input, $matches);
  11. print_r($matches);
Success #stdin #stdout 0.02s 52432KB
stdin
Standard input is empty
stdout
(?<!\d|\d )((?:0[1-9]|[12][0-9]|3[01]))[^\d
]?((?:0[1-9]|1[0-2]))[^\d
]?((?:[12][0-9]|20[12][0-9]))(?!\d)
Array
(
    [0] => 49.. dk /ak 01-05-2012
    [1] => 49.. dk /ak
    [2] => 01
    [3] => 05
    [4] => 2012
)