如何根据大写值拆分 TALEND 中的地址?

How to split an address in TALEND based on UPPER CASE values?

我想使用 talend 将下面的地址从单列拆分为多列。

输入

|地址|

|伦敦西北部圣帕特里克路 15 号|

预期输出

|ADDRESS_LINE1 | ADDRESS_LINE2 |

|圣帕特里克路 15 号 |伦敦西北部 |

您可以使用以下两个正则表达式来拆分您指定的输入地址:

ADDRESS_LINE1 = StringHandling.TRIM( input.ADDRESS.replaceAll("^(.+?)(([A-Z]{2,}\\s*?)+)$", "$1") ) ;

ADDRESS_LINE2 = StringHandling.TRIM( input.ADDRESS.replaceAll("^(.+?)(([A-Z]{2,}\\s*?)+)$", "$2") ) ;