<div dir="ltr">Hi, Steve,<div><br></div><div>Many thanks.  Please send me the link to  parse_address() and standardize_address().</div><div><br></div><div>I need to find these first before test-running.</div><div><br></div><div>Regards,</div><div><br></div><div>Shao</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sat, 25 Apr 2020 at 21:20, Stephen Woodbridge <<a href="mailto:stephenwoodbridge37@gmail.com">stephenwoodbridge37@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Shao,<br>
<br>
'^( *Building *[0-9]+)?[- 0-9]*'<br>
<br>
or something like that should do it. But I think you will find that a <br>
more robust solution is to use parse_address() and/or <br>
standardize_address() as they will recognize a lot of other address <br>
constructs, like "apt 3a" for for example.<br>
<br>
parse_address() that a text field and breaks it into "house number <br>
street name" and "city state zip", but only works well in North America.<br>
<br>
standardize_address() that comes with postGIS, breaks the address down <br>
into its components and can separate out things like buildings, and <br>
apartment/unit specifiers so you can then take the fields you are <br>
interested in and recombine just them in a new string. Again, this works <br>
best in North America.<br>
<br>
My github address-standardizer is built to recognize address for most <br>
counties, but it can also be configured to recognize address standards <br>
for any county without too much effort. It compiles and installs as <br>
postgresql extension.<br>
<br>
Addresses are generally very messy and unless your addresses are vary <br>
simple you will be constantly fighting with this or that exception.<br>
<br>
-Steve<br>
<br>
On 4/25/2020 2:55 PM, Shaozhong SHI wrote:<br>
> Is there a way to left trim including the building and number?<br>
><br>
> Building 3  21-1              Great Avenue, a city, a country, this <br>
> planet.<br>
><br>
> How to take way those things which are too local to an address?<br>
><br>
> Regards,<br>
><br>
> Shao<br>
><br>
> On Sat, 25 Apr 2020 at 01:48, Shaozhong SHI <<a href="mailto:shishaozhong@gmail.com" target="_blank">shishaozhong@gmail.com</a> <br>
> <mailto:<a href="mailto:shishaozhong@gmail.com" target="_blank">shishaozhong@gmail.com</a>>> wrote:<br>
><br>
>     I find this is a simple, but important question.<br>
><br>
>     How best to split numbers and the rest of address?<br>
><br>
>     For instance, one tricky one is as follows:<br>
><br>
>     21-1 Great Avenue, a city, a country, this planet<br>
><br>
>     How to turn this into the following:<br>
><br>
>     column 1,       column 2<br>
><br>
>       21-1              Great Avenue, a city, a country, this planet<br>
><br>
>     Note:  there is a hyphen in  21-1<br>
><br>
>     Any clue?<br>
><br>
>     Regards,<br>
><br>
>     Shao<br>
><br>
><br>
> _______________________________________________<br>
> postgis-users mailing list<br>
> <a href="mailto:postgis-users@lists.osgeo.org" target="_blank">postgis-users@lists.osgeo.org</a><br>
> <a href="https://lists.osgeo.org/mailman/listinfo/postgis-users" rel="noreferrer" target="_blank">https://lists.osgeo.org/mailman/listinfo/postgis-users</a><br>
<br>
_______________________________________________<br>
postgis-users mailing list<br>
<a href="mailto:postgis-users@lists.osgeo.org" target="_blank">postgis-users@lists.osgeo.org</a><br>
<a href="https://lists.osgeo.org/mailman/listinfo/postgis-users" rel="noreferrer" target="_blank">https://lists.osgeo.org/mailman/listinfo/postgis-users</a></blockquote></div>