Ejemplo n.º 1
0
Archivo: index.php Proyecto: javra/kvvx
function explode_place($arg)
{
    global $all_names;
    $arg = trim($arg, " ,");
    $parts = explode(" ", $arg);
    $parts = array_map(trim, $parts);
    $allParts = array();
    for ($i = 0; $i < count($parts); $i++) {
        if (!empty($parts[$i])) {
            $allParts[] = $parts[$i];
        }
    }
    $parts = $allParts;
    unset($allParts);
    while (TRUE) {
        $c1 = count($parts);
        for ($i = 0; $i < $c1; $i++) {
            if ($c1 >= $i + 1) {
                if (is_name($parts[$i] . " " . $parts[$i + 1])) {
                    // dieses Array-Element mit dem vorherigen zusammenfÃ&#188;hren
                    $parts[$i] .= " " . $parts[$i + 1];
                    array_splice($parts, $i + 1, 1);
                    break;
                }
                if (is_name($parts[$i] . "-" . $parts[$i + 1])) {
                    // dieses Array-Element mit dem vorherigen zusammenfÃ&#188;hren
                    $parts[$i] .= "-" . $parts[$i + 1];
                    array_splice($parts, $i + 1, 1);
                    break;
                }
            }
            if ($c1 >= $i + 2) {
                if (is_name($parts[$i] . " " . $parts[$i + 1] . " " . $parts[$i + 2])) {
                    // dieses Array-Element mit dem vorherigen zusammenfÃ&#188;hren
                    $parts[$i] .= " " . $parts[$i + 1] . " " . $parts[$i + 2];
                    array_splice($parts, $i + 1, 2);
                    break;
                }
                if (is_name($parts[$i] . "-" . $parts[$i + 1] . "-" . $parts[$i + 2])) {
                    // dieses Array-Element mit dem vorherigen zusammenfÃ&#188;hren
                    $parts[$i] .= "-" . $parts[$i + 1] . "-" . $parts[$i + 2];
                    array_splice($parts, $i + 1, 2);
                    break;
                }
            }
        }
        if (count($parts) == $c1) {
            break;
        }
    }
    if (count($parts) == 2) {
        if (is_place($parts[0])) {
            return array($parts[0], $parts[1]);
        } elseif (is_place($parts[1])) {
            return array($parts[1], $parts[0]);
        } elseif (is_name($parts[0])) {
            return array($parts[1], $parts[0]);
        } elseif (is_name($parts[1])) {
            return array($parts[0], $parts[1]);
        } else {
            return array($parts[0], $parts[1]);
        }
    } elseif (count($parts) == 1) {
        if (is_place($parts[1])) {
            return array($parts[0], "");
        } elseif (is_name($parts[0])) {
            return array("", $parts[0]);
        } else {
            return array("", $parts[0]);
        }
    } elseif (count($parts) > 2) {
        return array($parts[0], $parts[1]);
    }
}
Ejemplo n.º 2
0
Archivo: test.php Proyecto: javra/kvvx
function out()
{
    global $output_str, $not, $not2, $places, $names;
    $output_str = trim($output_str, " ,/");
    $output_strs = array();
    if (!empty($output_str) && !in_array($output_str, $not2) && strpos($output_str, "= ") === FALSE && strpos($output_str, "noch ") === FALSE) {
        if (!is_place($output_str)) {
            $is_place = FALSE;
        } else {
            $is_place = TRUE;
        }
        // am Anfang vieler Ortsnamen
        $output_str = trim($output_str, " -");
        // nur den ersten Ortsnamen übernehmen
        $pos = strpos($output_str, "siehe");
        if ($pos !== FALSE) {
            $length = strlen($output_str);
            $output_str = substr($output_str, 0, $pos - 1);
        }
        $output_str = str_replace("Str.", "Straße", $output_str);
        $output_str = str_replace("str.", "straße", $output_str);
        $output_str = strtolower($output_str);
        // den Namen so wie er ist speichern
        $output_strs[] = $output_str;
        // den Namen auch ohne geklammerte Dinge speichern
        $output_strs[] = eregi_replace(" \\(.*\\)", "", $output_str);
        // den Namen auch ohne Punkte speichern
        $output_strs[] = str_replace(".", "", $output_str);
        for ($i = 0; $i < count($output_strs); $i++) {
            if ($is_place) {
                $places[] = $output_strs[$i];
            } else {
                $names[] = $output_strs[$i];
            }
        }
    }
    $output_str = "";
}