", ");
function regex($string, $start, $end, $strip=TRUE){
/* Sanity Check */
if(is_array($string) OR !isset($string)){
return FALSE; // If its an array, we can't parse it
} else { // If its not an array, go ahead
// Descide weather to strip out odd chars
if($strip == 1){ // TRUE
$string = str_replace("\n","",str_replace("\r","",$string)); // strip new lines
} elseif($strip == 2){
$string = stripslashes(str_replace("\n","",str_replace("\r","",trim($matches[1],"\x00..\x1F")))); // strip anything
} // or FALSE or 0
$break_one=explode($start,$string);
$break_two=explode($end,$break_one[1]);
return (!$strip == FALSE) ? trim($break_two[0]) : $break_two[0];
} // end if
}
// 13 lines
// Usage:
// regex($string, "
");
function get_tag_contents($string, $tag, $strip=TRUE){
/* Sanity Check */
$tag = str_replace(array("<",">","/"),"",$tag); // Stip out tag parts, we add them in later
if(is_array($string) OR !isset($string)){
return FALSE; // If its an array, we can't parse it
} else { // If its not an array, go ahead
if(!preg_match("/.<".$tag."[^>]*>(.*?)<.".$tag.">/si",$string,$matches) && !is_array($matches)){
return FALSE;
}
// strip extra line slashes out if wanted.
return ($strip) ? stripslashes(str_replace("\n","",trim($matches[1],"\x00..\x1F"))) : $matches[1];
}
}
function get_all_tag_contents($string, $tag, $strip=TRUE, $multi=FALSE){
/* Sanity Check */
$tag = str_replace(array("<",">","/"),"",$tag); // Stip out tag parts, we add them in later
if(is_array($string) OR !isset($string)){
return FALSE; // If its an array, we can't parse it
} else { // If its not an array, go ahead
if($multi){ // Search for the same tag or not
if(!preg_match_all("/<".$tag."[^>]*>(.*?)<.".$tag.">/s",$string,$matches) && !is_array($matches)){
return FALSE; // We don't have an array. Cannot continue
}
if(count($matches) > 2){
$results = ($strip) ? stripslashes(str_replace("\n","",trim($matches[0][1],"\x00..\x1F"))) : $matches[0][1]; // Get result since we only have one
} else {
$results = array();
foreach($matches[1] as $result){ // This seems to work, leave it for now
if($strip){
$results[] = stripslashes(str_replace("\n","",trim($result,"\x00..\x1F")));
} else {
$results[] = $result;
} // end if
} // end foreach
}
return $results; // if its multi mode, we are done
} else { // if we are not doing multi mode, we start now
if(!preg_match("/.<".$tag."[^>]*>(.*?)<.".$tag.">/si",$string,$matches) && !is_array($matches)){
return FALSE;
}
// strip extra line slashes out if wanted.
return ($strip) ? stripslashes(str_replace("\n","",trim($matches[1],"\x00..\x1F"))) : $matches[1];
}
} // end sanity check
} // end function
?>