IMPORTANT!

Snipt is going open source. We've toyed with this idea for quite a while, and have finally decided it's the right way to move forward.

A few things:
  • The entire Snipt source code will be released on GitHub under the 3-clause BSD License on Friday, September 10th.
  • While we'd like to think we're perfect, we realize we're only human. By open sourcing the software that runs this website, certain bugs or security flaws may be discovered that could compromise the privacy of your snipts.
  • Only the Lion Burger team will be able to push commits to the Snipt.net site. Contributors should send a pull request to add new features or submit patches.
  • By using this site, you agree not to be too angry or take any legal action against Lion Burger should this whole thing go up in flames some day.
  • Follow us on Twitter for updates.
I agree, close this message
Sign up to create your own snipts, or login.

Latest 100 public snipts » robertbanh's snipts » regex The latest regex snipts from robertbanh.

showing 1-6 of 6 snipts for regex
  • Dates Samples
    <?php
    
    $currDate = date('Y-m-d h:i:s');
    
    // convert timestamp from mysql
    $nextReviewDt = date('F d, Y',strtotime($nextReviewDt));
    
    // Add 30 days 
    $CommentStartDt = date('m/d/Y');
    $CommentEndDt = date('m/d/Y', 
    	mktime(0,0,0,date("m"),date("d")+30,date("Y"))); // add 30 days
    
    // convert year to 4 digits
    if ($y > 60) $y = '19'.$y;
    else $y = '20'.$y;
    
    // split if there are slash or dash
    list($m, $d, $y) = split('[/|-]', $iDate);
    
    if (preg_match("/-/", $iDate))
    	list($m, $d, $y) = split('-', $iDate);
    else if (preg_match("/\//", $iDate))
    	list($m, $d, $y) = split('/', $iDate);
    
    $specDate = mktime(0, 0, 0, $m, $d, $y);
    $numOfDays = (time() - $specDate) / (24 * 60 * 60);
    
    // convert date from mysql db
    if (preg_match("/(.*)Dt$/", $dbDate))
    	$dbDate = date("M d, Y h:ia", strtotime($dbDate));
    
    // output dates - walk the days
    $startDt = '2009-01-04';
    $endDt = date('Y-m-d');
    while ($startDt != $endDt)
    {
    	echo "$startDt <br/>";
    	// increment the day
    	$startDt = strtotime(date("Y-m-d", strtotime($startDt)) . " +1 day");
    	// convert back to readable format
    	$startDt = date("Y-m-d",$startDt);
    }
    
    function count_days( $a, $b )
    {
    	// First we need to break these dates into their constituent parts:
    	$gd_a = getdate( $a );
    	$gd_b = getdate( $b );
    
    	// Now recreate these timestamps, based upon noon on each day
    	// The specific time doesn't matter but it must be the same each day
    	$a_new = mktime( 12, 0, 0, $gd_a['mon'], $gd_a['mday'], $gd_a['year'] );
    	$b_new = mktime( 12, 0, 0, $gd_b['mon'], $gd_b['mday'], $gd_b['year'] );
    
    	// Subtract these two numbers and divide by the number of seconds in a
    	//  day. Round the result since crossing over a daylight savings time
    	//  barrier will cause this time to be off by an hour or two.
    	return round( abs( $a_new - $b_new ) / 86400 );
    }
    

    copy | embed

    0 comments - tagged in  posted by robertbanh on Jan 22, 2010 at 3:28 p.m. EST
  • Regex: Date format
    <?
    // Date must match format: mm/dd/yyyy
    if (!preg_match('/^\d{2}\/\d{2}\/\d{4}$/', $due_date))
      echo "Error !";
    

    copy | embed

    0 comments - tagged in  posted by robertbanh on Sep 15, 2009 at 3:38 p.m. EDT
  • regex - remove 2 or more whitespaces
    <?
    // remove multiple whitespaces
    $line1 = preg_replace("\s{2,}", " ", $line1);
    

    copy | embed

    0 comments - tagged in  posted by robertbanh on Sep 10, 2009 at 8:08 p.m. EDT
  • regex to return only first set
    <?
    // extract just the first element
    $firstset = ereg_replace("^(.*) abc", "\\1", $data); 
    
    // note: \\1 is the same as javascript's $1
    

    copy | embed

    0 comments - tagged in  posted by robertbanh on Sep 10, 2009 at 8:08 p.m. EDT
  • regex - replace invalid chars with underscore
    <?
    // replace invalid chars with underscore (good for filename)
    $name = preg_replace("/[^a-z0-9-]/", "_" ,$name);
    

    copy | embed

    0 comments - tagged in  posted by robertbanh on Sep 10, 2009 at 8:05 p.m. EDT
  • PHP Regex example of greedy and lazy
    <?
    
    $x = '<p id="test">p1</p> <p id="test">p2</p>';
    
    // greedy
    if (preg_match('#<p id="test">(.+)</p>#', $x))
        echo "greedy";
    
    // lazy 1
    if (preg_match('#<p id="test">(.+?)</p>#', $x))
        echo "lazy 1";
    
    // lazy 2
    if (preg_match('#<p id="test">([^<]+)</p>#', $x))
        echo "lazy 2";
    

    copy | embed

    0 comments - tagged in  posted by robertbanh on Sep 10, 2009 at 7:51 p.m. EDT
Sign up to create your own snipts, or login.