Revision 771f38c4
Added by Andreas Müller almost 13 years ago
cdmlib-model/src/main/java/eu/etaxonomy/cdm/strategy/parser/location/CoordinateConverter.java | ||
---|---|---|
95 | 95 |
//+/-/Nn/Ss/Ww/EeDD\u00B0MM\u02B9SS.SSS |
96 | 96 |
"(^" + |
97 | 97 |
"(\\s)*(\\+|-|W|w|E|e|N|n|S|s)?(\\s)*" + |
98 |
"((\\d{1,3}(\\s)*(\u00B0|\u00BA|D|d)?(\\s)*$)|(\\d{1,3}(\\s)*(\u00B0|\u00BA|D|d)(\\s)*\\d{1,2}(\\s)*(\u02B9|'|M|m)?(\\s)*$)|(\\d{1,3}(\\s)*(\u00B0|\u00BA|D|d)(\\s)*\\d{1,2}(\\s)*(\u02B9|'|M|m)(\\s)*\\d{1,2}(\\.|\\,)?(\\s)*(\u02BA|\"|''|S|s)?(\\s)*$)|(\\d{1,3}(\\s)*(\u00B0|\u00BA|D|d)(\\s)*\\d{1,2}(\\s)*(\u02B9|'|M|m)(\\s)*\\d{1,2}(\\.|\\,)\\d+(\\s)*(\u02BA|\"|''|S|s)?(\\s)*$))" + |
|
98 |
"((\\d{1,3}(\\s)*(\u00B0|\u00BA|D|d)?(\\s)*$)" + |
|
99 |
"|(\\d{1,3}(\\s)*(\u00B0|\u00BA|D|d)(\\s)*\\d{1,2}(\\s)*(\u02B9|'|M|m)?(\\s)*$)" + |
|
100 |
"|(\\d{1,3}(\\s)*(\u00B0|\u00BA|D|d)(\\s)*\\d{1,2}(\\s)*(\u02B9|'|M|m)(\\s)*\\d{1,2}(\\.|\\,)?(\\s)*(\u02BA|\"|''|S|s)?(\\s)*$)" + |
|
101 |
"|(\\d{1,3}(\\s)*(\u00B0|\u00BA|D|d)(\\s)*\\d{1,2}(\\s)*(\u02B9|'|M|m)(\\s)*\\d{1,2}(\\.|\\,)\\d+(\\s)*(\u02BA|\"|''|S|s)?(\\s)*$))" + |
|
99 | 102 |
")" + |
100 | 103 |
//DD°MM\u02B9SS.SSSNn/Ss/Ww/Ee |
101 |
"|(^" + |
|
102 |
"(\\s)*((\\d{1,3}(\\s)*(\u00B0|\u00BA|D|d)?(\\s)*)|(\\d{1,3}(\\s)*(\u00B0|\u00BA|D|d)(\\s)*\\d{1,2}(\\s)*(\u02B9|'|M|m)?(\\s)*)|(\\d{1,3}(\\s)*(\u00B0|\u00BA|D|d)(\\s)*\\d{1,2}(\\s)*(\u02B9|'|M|m)(\\s)*\\d{1,2}(\\.|\\,)?(\\s)*(\u02BA|\"|''|S|s)?(\\s)*)|(\\d{1,3}(\\s)*(\u00B0|\u00BA|D|d)(\\s)*\\d{1,2}(\\s)*(\u02B9|'|M|m)(\\s)*\\d{1,2}(\\.|\\,)\\d+(\\s)*(\u02BA|\"|''|S|s)?(\\s)*))" + |
|
104 |
"|(^(\\s)*" + |
|
105 |
"((\\d{1,3}(\\s)*(\u00B0|\u00BA|D|d)?(\\s)*)|" + |
|
106 |
"(\\d{1,3}(\\s)*(\u00B0|\u00BA|D|d)(\\s)*\\d{1,2}(\\s)*(\u02B9|'|M|m)?(\\s)*)|" + |
|
107 |
"(\\d{1,3}(\\s)*(\u00B0|\u00BA|D|d)(\\s)*\\d{1,2}(\\s)*(\u02B9|'|M|m)(\\s)*\\d{1,2}(\\.|\\,)?(\\s)*(\u02BA|\"|''|S|s)?(\\s)*)|" + |
|
108 |
"(\\d{1,3}(\\s)*(\u00B0|\u00BA|D|d)(\\s)*\\d{1,2}(\\s)*(\u02B9|'|M|m)(\\s)*\\d{1,2}(\\.|\\,)\\d+(\\s)*(\u02BA|\"|''|S|s)?(\\s)*))" + |
|
103 | 109 |
"(W|w|E|e|N|n|S|s)?(\\s)*$" + |
104 | 110 |
")"; |
105 | 111 |
patterns.add(pattern); |
... | ... | |
517 | 523 |
//remove second symbol (s is removed by the get sign method) |
518 | 524 |
//double apostrophe is not removed here as single apostrphe may mark minutes! |
519 | 525 |
//it's taken care of later after extracting the decimal part |
520 |
str = str.replaceAll("(u\02BA|\")", "");
|
|
526 |
str = str.replaceAll("(\u02BA|\")", "");
|
|
521 | 527 |
|
522 | 528 |
//do some further replacing |
523 | 529 |
//Replace degree symbol |
Also available in: Unified diff
implementing decimals for seconds in Sexagesimal Points #2267