[Schmitzm-commits] r2034 - trunk/schmitzm-adresses/src/main/java/de/schmitzm/adresses
scm-commit at wald.intevation.org
scm-commit at wald.intevation.org
Sun May 27 23:13:51 CEST 2012
Author: alfonx
Date: 2012-05-27 23:13:51 +0200 (Sun, 27 May 2012)
New Revision: 2034
Modified:
trunk/schmitzm-adresses/src/main/java/de/schmitzm/adresses/AddrStringUtil.java
trunk/schmitzm-adresses/src/main/java/de/schmitzm/adresses/XLSNormRule.java
Log:
Modified: trunk/schmitzm-adresses/src/main/java/de/schmitzm/adresses/AddrStringUtil.java
===================================================================
--- trunk/schmitzm-adresses/src/main/java/de/schmitzm/adresses/AddrStringUtil.java 2012-05-27 21:01:05 UTC (rev 2033)
+++ trunk/schmitzm-adresses/src/main/java/de/schmitzm/adresses/AddrStringUtil.java 2012-05-27 21:13:51 UTC (rev 2034)
@@ -60,7 +60,7 @@
if (hn == null)
return null;
- hn = hn.replaceAll("^0+", "");
+ hn = RegexCache.getInstance().replaceAll(hn, "^0+", "");
Matcher matcher = RegexCache.getInstance().getMatcher("(\\d+)\\s+\\1", hn);
if (matcher.find())
@@ -279,7 +279,7 @@
* @return
*/
public static String removeTrailingHyphens(String zusammen) {
- return zusammen.replaceAll("(.*)\\s?[-]$", "$1");
+ return RegexCache.getInstance().replaceAll(zusammen, "(.*)\\s?[-]$", "$1");
}
/**
@@ -287,11 +287,11 @@
* @return
*/
public static String removeKommataAfterStreetname(String zusammen) {
- return zusammen.replaceAll("([A-Za-z][A-Za-z]+)\\s?[,]\\s?(\\d+)", "$1 $2");
+ return RegexCache.getInstance().replaceAll(zusammen, "([A-Za-z][A-Za-z]+)\\s?[,]\\s?(\\d+)", "$1 $2");
}
private static String removeSpacesBetweenHiphenAndDotAndLetters(String zusammen) {
- zusammen = zusammen.replaceAll("([A-Za-z]+)\\s+([.-]*)\\s?([.-])+", "$1$2$3");
+ zusammen = RegexCache.getInstance().replaceAll(zusammen, "([A-Za-z]+)\\s+([.-]*)\\s?([.-])+", "$1$2$3");
return zusammen;
}
@@ -299,7 +299,7 @@
* Bearbeitung eines Spezialfalls, der nicht funktioniert...
*/
public static String removeLeadingSpacesInfrontOfNumbers(String zusammen) {
- return zusammen.replaceAll("([,/\\\\])\\s+(\\d+)", "$1$2");
+ return RegexCache.getInstance().replaceAll(zusammen, "([,/\\\\])\\s+(\\d+)", "$1$2");
}
/**
@@ -355,7 +355,7 @@
final List<String> result = new ArrayList<String>();
- hausnummerUntested = hausnummerUntested.replaceAll("\\s+", "");
+ hausnummerUntested = RegexCache.getInstance().replaceAll(hausnummerUntested, "\\s+", "");
Matcher m = REGEX_hnZusatzBereich2aBis2f.matcher(hausnummerUntested);
if (m.find()) {
@@ -457,22 +457,22 @@
strasse = strasse.toLowerCase();
- strasse = strasse.replaceAll("x{2,}$", "");
- strasse = strasse.replaceAll("\\sx+$", "");
+ strasse = RegexCache.getInstance().replaceAll(strasse, "x{2,}$", "");
+ strasse = RegexCache.getInstance().replaceAll(strasse, "\\sx+$", "");
- strasse = strasse.replaceAll("wegx$", "weg");
- strasse = strasse.replaceAll("strassex$", "strasse");
- strasse = strasse.replaceAll("alleex$", "allee");
+ strasse = RegexCache.getInstance().replaceAll(strasse, "wegx$", "weg");
+ strasse = RegexCache.getInstance().replaceAll(strasse, "strassex$", "strasse");
+ strasse = RegexCache.getInstance().replaceAll(strasse, "alleex$", "allee");
- strasse = strasse.replaceAll("str[\\.\\s]", "strasse");
- strasse = strasse.replaceAll("strase", "strasse");
- strasse = strasse.replaceAll("ßtrase", "strasse");
- strasse = strasse.replaceAll("alle\\b", "allee");
- strasse = strasse.replaceAll("alee\\b", "allee");
- strasse = strasse.replaceAll("\\s+s$", "strasse");
+ strasse = RegexCache.getInstance().replaceAll(strasse, "str[\\.\\s]", "strasse");
+ strasse = RegexCache.getInstance().replaceAll(strasse, "strase", "strasse");
+ strasse = RegexCache.getInstance().replaceAll(strasse, "ßtrase", "strasse");
+ strasse = RegexCache.getInstance().replaceAll(strasse, "alle\\b", "allee");
+ strasse = RegexCache.getInstance().replaceAll(strasse, "alee\\b", "allee");
+ strasse = RegexCache.getInstance().replaceAll(strasse, "\\s+s$", "strasse");
- strasse = strasse.replaceAll("\\bgeschw[\\.\\s-]", "geschwister");
- strasse = strasse.replaceAll("\\bgebr[\\.\\s-]", "gebrueder");
+ strasse = RegexCache.getInstance().replaceAll(strasse, "\\bgeschw[\\.\\s-]", "geschwister");
+ strasse = RegexCache.getInstance().replaceAll(strasse, "\\bgebr[\\.\\s-]", "gebrueder");
strasse = norm(strasse);
@@ -490,62 +490,65 @@
ort = ort.toLowerCase();
// ein in kammern stehender zusatz " (main)" wird in "xmein.." umgewandelt
- ort = ort.replaceAll("\\((.*)\\)", "xx$1"); // neu
+ ort = RegexCache.getInstance().replaceAll(ort, "\\((.*)\\)", "xx$1"); // neu
- ort = ort.replaceAll("(?i)freiburg.+(i\\.?.?b(\\.||reisgau))[^r]", "freiburg im breisgau"); // neu
- ort = ort.replaceAll("(?i)^\\s*emmerich$", "emmerich am rhein");
+ ort = RegexCache.getInstance().replaceAll(ort, "(?i)freiburg.+(i\\.?.?b(\\.||reisgau))[^r]",
+ "freiburg im breisgau"); // neu
+ ort = RegexCache.getInstance().replaceAll(ort, "(?i)^\\s*emmerich$", "emmerich am rhein");
- ort = ort.replaceAll("\\brbge\\.?\\b", "ruebenberge");
- ort = ort.replaceAll("\\bopf\\.?\\b", "oberpfalz");
- ort = ort.replaceAll("\\bupf\\.?\\b", "unterpfalz");
+ ort = RegexCache.getInstance().replaceAll(ort, "\\brbge\\.?\\b", "ruebenberge");
+ ort = RegexCache.getInstance().replaceAll(ort, "\\bopf\\.?\\b", "oberpfalz");
+ ort = RegexCache.getInstance().replaceAll(ort, "\\bupf\\.?\\b", "unterpfalz");
- ort = ort
+ ort = RegexCache
+ .getInstance()
.replaceAll(
+ ort,
"\\b(konrad.?zuse.?|berg|documenta.?|loreley|universit(ae|ä)ts|kreis|landeshaupt|freie und hanse|hanse|)(stadt|st\\.)$",
"");
- ort = ort.replaceAll("\\bgemfr\\b", "");
- ort = ort.replaceAll("\\bgdefrgeb\\b", "");
- ort = ort.replaceAll("\\bgemeindefrei\\b", "");
+ ort = RegexCache.getInstance().replaceAll(ort, "\\bgemfr\\b", "");
+ ort = RegexCache.getInstance().replaceAll(ort, "\\bgdefrgeb\\b", "");
+ ort = RegexCache.getInstance().replaceAll(ort, "\\bgemeindefrei\\b", "");
- ort = ort.replaceAll("\\bbezirk\\b", "");
- ort = ort.replaceAll("\\bgebiet\\b", "");
- ort = ort.replaceAll(".\\bmarkt$", "");
- ort = ort.replaceAll("\\bgkst\\b", "");
- ort = ort.replaceAll("\\b(markt|)flecken$", "");
+ ort = RegexCache.getInstance().replaceAll(ort, "\\bbezirk\\b", "");
+ ort = RegexCache.getInstance().replaceAll(ort, "\\bgebiet\\b", "");
+ ort = RegexCache.getInstance().replaceAll(ort, ".\\bmarkt$", "");
+ ort = RegexCache.getInstance().replaceAll(ort, "\\bgkst\\b", "");
+ ort = RegexCache.getInstance().replaceAll(ort, "\\b(markt|)flecken$", "");
- ort = ort.replaceAll("\\bkurort$", "");
- ort = ort.replaceAll("\\bheilbad\\b", "");
+ ort = RegexCache.getInstance().replaceAll(ort, "\\bkurort$", "");
+ ort = RegexCache.getInstance().replaceAll(ort, "\\bheilbad\\b", "");
- ort = ort.replaceAll("\\bst[\\.\\s]", "sankt");
- ort = ort.replaceAll("\\bsta[\\.\\s]", "sankt");
+ ort = RegexCache.getInstance().replaceAll(ort, "\\bst[\\.\\s]", "sankt");
+ ort = RegexCache.getInstance().replaceAll(ort, "\\bsta[\\.\\s]", "sankt");
- ort = ort.replaceAll("^maria[-\\s].", "");
+ ort = RegexCache.getInstance().replaceAll(ort, "^maria[-\\s].", "");
- ort = ort.replaceAll("\\bi(\\.?\\s|\\s)Sa(\\.|\\s)", "insachsen"); // neu
+ ort = RegexCache.getInstance().replaceAll(ort, "\\bi(\\.?\\s|\\s)Sa(\\.|\\s)", "insachsen"); // neu
- ort = ort.replaceAll(".\\bauf\\b", "xx"); // NEU 10.5.2012 "Bergen auf Rügen"
- ort = ort.replaceAll(".\\ban[\\.\\s]der\\b", "xx");
- ort = ort.replaceAll(".\\ban[\\.\\s]d[\\.\\s]\\b", "xx"); // neuneu
+ ort = RegexCache.getInstance().replaceAll(ort, ".\\bauf\\b", "xx"); // NEU 10.5.2012 "Bergen auf Rügen"
+ ort = RegexCache.getInstance().replaceAll(ort, ".\\ban[\\.\\s]der\\b", "xx");
+ ort = RegexCache.getInstance().replaceAll(ort, ".\\ban[\\.\\s]d[\\.\\s]\\b", "xx"); // neuneu
- ort = ort.replaceAll(".\\bin[\\.\\s]der\\b", "xx"); // neuneu
- ort = ort.replaceAll(".\\bin[\\.\\s]d[\\.\\s]\\b", "xx"); // neuneu
+ ort = RegexCache.getInstance().replaceAll(ort, ".\\bin[\\.\\s]der\\b", "xx"); // neuneu
+ ort = RegexCache.getInstance().replaceAll(ort, ".\\bin[\\.\\s]d[\\.\\s]\\b", "xx"); // neuneu
- ort = ort.replaceAll(".\\bi[\\.\\s]der\\b", "xx"); // neuneu
- ort = ort.replaceAll(".\\bi[\\.\\s]d[\\.\\s]\\b", "xx"); // neuneu
+ ort = RegexCache.getInstance().replaceAll(ort, ".\\bi[\\.\\s]der\\b", "xx"); // neuneu
+ ort = RegexCache.getInstance().replaceAll(ort, ".\\bi[\\.\\s]d[\\.\\s]\\b", "xx"); // neuneu
- ort = ort.replaceAll(".\\bin\\b", "xx"); // neu
- ort = ort.replaceAll(".\\bin\\b", "xx"); // neu
- ort = ort.replaceAll(".\\bim\\b", "xx"); // neu
- ort = ort.replaceAll(".\\bam\\b", "xx"); // neu
- ort = ort.replaceAll(".\\ban\\b", "xx"); // neu
- ort = ort.replaceAll(".\\bbei\\b", "xx"); // neu
+ ort = RegexCache.getInstance().replaceAll(ort, ".\\bin\\b", "xx"); // neu
+ ort = RegexCache.getInstance().replaceAll(ort, ".\\bin\\b", "xx"); // neu
+ ort = RegexCache.getInstance().replaceAll(ort, ".\\bim\\b", "xx"); // neu
+ ort = RegexCache.getInstance().replaceAll(ort, ".\\bam\\b", "xx"); // neu
+ ort = RegexCache.getInstance().replaceAll(ort, ".\\ban\\b", "xx"); // neu
+ ort = RegexCache.getInstance().replaceAll(ort, ".\\bbei\\b", "xx"); // neu
- // ort = ort.replaceAll(".\\ba[\\.\\s]\\s?d[\\.\\s]", "xx"); // neu
- ort = ort.replaceAll(".\\ba[\\.\\s]\\s?d[\\.\\s]", "xx"); // Bad Neustadt a. d. Saale
+ // ort = RegexCache.getInstance().replaceAll(ort,".\\ba[\\.\\s]\\s?d[\\.\\s]", "xx"); // neu
+ ort = RegexCache.getInstance().replaceAll(ort, ".\\ba[\\.\\s]\\s?d[\\.\\s]", "xx"); // Bad Neustadt a. d. Saale
- ort = ort.replaceAll(".\\bi[\\.\\s]", "xx"); // neu
- ort = ort.replaceAll(".\\ba[\\.\\s]", "xx"); // neu
- ort = ort.replaceAll(".\\bb[\\.\\s]", "xx"); // neu
+ ort = RegexCache.getInstance().replaceAll(ort, ".\\bi[\\.\\s]", "xx"); // neu
+ ort = RegexCache.getInstance().replaceAll(ort, ".\\ba[\\.\\s]", "xx"); // neu
+ ort = RegexCache.getInstance().replaceAll(ort, ".\\bb[\\.\\s]", "xx"); // neu
ort = norm(ort);
@@ -575,20 +578,20 @@
static public String saeubereStrassenname(String orginal) {
String strasse = LangUtil.removeTags(orginal).toLowerCase();
- strasse = strasse.replaceAll("str\\.ße", "str.");
+ strasse = RegexCache.getInstance().replaceAll(strasse, "str\\.ße", "str.");
- strasse = strasse.replaceAll("\\+", " ");
- strasse = strasse.replaceAll("\\s\\s+", " ");
- strasse = strasse.replaceAll("(\\d)\\s", "$1");
- strasse = strasse.replaceAll("-\\s+", "-");
- strasse = strasse.replaceAll("\\s+-", "-");
- strasse = strasse.replaceAll("tra(ss|ß)e( |\\d)", "tr.$2");
- strasse = strasse.replaceAll("tra(ss|ß)e\\b", "tr.");
- strasse = strasse.replaceAll("str[^\\.]\\b", "str.");
- strasse = strasse.replaceAll("([^\\d^\\s])(\\d)", "$1 $2");
- strasse = strasse.replaceAll("str$", "str.");
+ strasse = RegexCache.getInstance().replaceAll(strasse, "\\+", " ");
+ strasse = RegexCache.getInstance().replaceAll(strasse, "\\s\\s+", " ");
+ strasse = RegexCache.getInstance().replaceAll(strasse, "(\\d)\\s", "$1");
+ strasse = RegexCache.getInstance().replaceAll(strasse, "-\\s+", "-");
+ strasse = RegexCache.getInstance().replaceAll(strasse, "\\s+-", "-");
+ strasse = RegexCache.getInstance().replaceAll(strasse, "tra(ss|ß)e( |\\d)", "tr.$2");
+ strasse = RegexCache.getInstance().replaceAll(strasse, "tra(ss|ß)e\\b", "tr.");
+ strasse = RegexCache.getInstance().replaceAll(strasse, "str[^\\.]\\b", "str.");
+ strasse = RegexCache.getInstance().replaceAll(strasse, "([^\\d^\\s])(\\d)", "$1 $2");
+ strasse = RegexCache.getInstance().replaceAll(strasse, "str$", "str.");
- strasse = strasse.replaceAll("^Str\\.$", "");
+ strasse = RegexCache.getInstance().replaceAll(strasse, "^Str\\.$", "");
{
// Großschreibung aller Anfangsbuchstaben, AUSSER in den Hausnummerzusätzen
@@ -610,15 +613,15 @@
if (firstNumIdx > 2 && firstNumIdx < strasse.length() - 1) {
s2 = strasse.substring(firstNumIdx, strasse.length());
s2 = s2.toLowerCase();
- s2 = s2.replaceAll("\\s+", "");
+ s2 = RegexCache.getInstance().replaceAll(s2, "\\s+", "");
strasse = strasse.substring(0, firstNumIdx);
}
strasse = WordUtils.capitalize(strasse, new char[] { ' ', '-' });
strasse = strasse + s2;
}
- strasse = strasse.replaceAll(" Dem ", " dem ");
- strasse = strasse.replaceAll(" Der ", " der ");
+ strasse = RegexCache.getInstance().replaceAll(strasse, " Dem ", " dem ");
+ strasse = RegexCache.getInstance().replaceAll(strasse, " Der ", " der ");
return strasse;
}
Modified: trunk/schmitzm-adresses/src/main/java/de/schmitzm/adresses/XLSNormRule.java
===================================================================
--- trunk/schmitzm-adresses/src/main/java/de/schmitzm/adresses/XLSNormRule.java 2012-05-27 21:01:05 UTC (rev 2033)
+++ trunk/schmitzm-adresses/src/main/java/de/schmitzm/adresses/XLSNormRule.java 2012-05-27 21:13:51 UTC (rev 2034)
@@ -1,11 +1,12 @@
package de.schmitzm.adresses;
+import de.schmitzm.regex.RegexCache;
+
public class XLSNormRule implements NormRule {
@Override
public String toString() {
- return "XLSNormRule [was=" + was + ", zu=" + zu + ", regEx=" + regEx
- + ", comment=" + comment + "]";
+ return "XLSNormRule [was=" + was + ", zu=" + zu + ", regEx=" + regEx + ", comment=" + comment + "]";
}
private final String was;
@@ -27,7 +28,7 @@
String orig = str;
if (regEx) {
- str = str.replaceAll(was, zu);
+ str = RegexCache.getInstance().replaceAll(str, was, zu);
} else {
str = str.replace(was, zu);
}
More information about the Schmitzm-commits
mailing list