<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: How to split an address in TALEND based on UPPER CASE values? in Talend Studio</title>
    <link>https://community.qlik.com/t5/Talend-Studio/How-to-split-an-address-in-TALEND-based-on-UPPER-CASE-values/m-p/2354096#M120140</link>
    <description>&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;No a function is available for split the address based on UPPER CASE value, here I write a user routine to return the word which has all upper case character. &lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;public class myroutine {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;	&lt;/P&gt;&lt;P&gt;	static String[] words;&lt;/P&gt;&lt;P&gt;	static String currentWord="";&lt;/P&gt;&lt;P&gt;	&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;public static boolean isUpperCase(String s)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for (int i=0; i&amp;lt;s.length(); i++)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (Character.isLowerCase(s.charAt(i)))&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return false;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(Character.isDigit(s.charAt(i)))&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return false;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return true;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;public static String getFirstUpperCaseWord(String address) {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;words=address.split(" ");&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;for(int i=0;i&amp;lt;words.length;i++){&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;currentWord=words[i];&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;//&amp;nbsp;System.out.println(currentWord);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;if(isUpperCase(currentWord)==true){&lt;/P&gt;&lt;P&gt;&amp;nbsp;break;&lt;/P&gt;&lt;P&gt;&amp;nbsp;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;return currentWord;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;My idea is to split the string based on the position of the first word which has all upper case character. I call the user routine on tMap and add two new columns, address1 and address2. &lt;/P&gt;&lt;P&gt;set the expression of address1 as:&lt;/P&gt;&lt;P&gt;row1.address.substring(0, row1.address.indexOf(myroutine.getFirstUpperCaseWord(row1.address)))&lt;/P&gt;&lt;P&gt;set the expression of address2 as:&lt;/P&gt;&lt;P&gt;row1.address.substring(row1.address.indexOf(myroutine.getFirstUpperCaseWord(row1.address)))&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Hope it helps!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Shong&lt;/P&gt;</description>
    <pubDate>Wed, 14 Jul 2021 03:29:49 GMT</pubDate>
    <dc:creator>Anonymous</dc:creator>
    <dc:date>2021-07-14T03:29:49Z</dc:date>
    <item>
      <title>How to split an address in TALEND based on UPPER CASE values?</title>
      <link>https://community.qlik.com/t5/Talend-Studio/How-to-split-an-address-in-TALEND-based-on-UPPER-CASE-values/m-p/2354095#M120139</link>
      <description>&lt;P&gt;I want to split the below address from single column to multiple columns using talend.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;B&gt;&lt;I&gt;&lt;U&gt;Input&lt;/U&gt;&lt;/I&gt;&lt;/B&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;|ADDRESS|&lt;/P&gt;&lt;P&gt;|15 St. Patrick Rd NORTH WEST LONDON|&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;B&gt;&lt;I&gt;&lt;U&gt;Expected Output&lt;/U&gt;&lt;/I&gt;&lt;/B&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;|ADDRESS_LINE1 | ADDRESS_LINE2 |&lt;/P&gt;&lt;P&gt;|15 St. Patrick Rd | NORTH WEST LONDON |&lt;/P&gt;</description>
      <pubDate>Tue, 13 Jul 2021 10:46:37 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/How-to-split-an-address-in-TALEND-based-on-UPPER-CASE-values/m-p/2354095#M120139</guid>
      <dc:creator>baarthe</dc:creator>
      <dc:date>2021-07-13T10:46:37Z</dc:date>
    </item>
    <item>
      <title>Re: How to split an address in TALEND based on UPPER CASE values?</title>
      <link>https://community.qlik.com/t5/Talend-Studio/How-to-split-an-address-in-TALEND-based-on-UPPER-CASE-values/m-p/2354096#M120140</link>
      <description>&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;No a function is available for split the address based on UPPER CASE value, here I write a user routine to return the word which has all upper case character. &lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;public class myroutine {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;	&lt;/P&gt;&lt;P&gt;	static String[] words;&lt;/P&gt;&lt;P&gt;	static String currentWord="";&lt;/P&gt;&lt;P&gt;	&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;public static boolean isUpperCase(String s)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for (int i=0; i&amp;lt;s.length(); i++)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (Character.isLowerCase(s.charAt(i)))&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return false;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(Character.isDigit(s.charAt(i)))&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return false;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return true;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;public static String getFirstUpperCaseWord(String address) {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;words=address.split(" ");&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;for(int i=0;i&amp;lt;words.length;i++){&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;currentWord=words[i];&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;//&amp;nbsp;System.out.println(currentWord);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;if(isUpperCase(currentWord)==true){&lt;/P&gt;&lt;P&gt;&amp;nbsp;break;&lt;/P&gt;&lt;P&gt;&amp;nbsp;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;return currentWord;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;My idea is to split the string based on the position of the first word which has all upper case character. I call the user routine on tMap and add two new columns, address1 and address2. &lt;/P&gt;&lt;P&gt;set the expression of address1 as:&lt;/P&gt;&lt;P&gt;row1.address.substring(0, row1.address.indexOf(myroutine.getFirstUpperCaseWord(row1.address)))&lt;/P&gt;&lt;P&gt;set the expression of address2 as:&lt;/P&gt;&lt;P&gt;row1.address.substring(row1.address.indexOf(myroutine.getFirstUpperCaseWord(row1.address)))&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Hope it helps!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Shong&lt;/P&gt;</description>
      <pubDate>Wed, 14 Jul 2021 03:29:49 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/How-to-split-an-address-in-TALEND-based-on-UPPER-CASE-values/m-p/2354096#M120140</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2021-07-14T03:29:49Z</dc:date>
    </item>
  </channel>
</rss>

