{"id":24136,"date":"2022-11-30T16:43:09","date_gmt":"2022-11-30T11:13:09","guid":{"rendered":"https:\/\/jassweb.com\/solved\/solved-how-to-create-array-from-string-in-java-with-respective-data-items-closed\/"},"modified":"2022-11-30T16:43:09","modified_gmt":"2022-11-30T11:13:09","slug":"solved-how-to-create-array-from-string-in-java-with-respective-data-items-closed","status":"publish","type":"post","link":"https:\/\/jassweb.com\/solved\/solved-how-to-create-array-from-string-in-java-with-respective-data-items-closed\/","title":{"rendered":"[Solved] how to create array from string in java with respective data items [closed]"},"content":{"rendered":"<p> [ad_1]<br \/>\n<\/p>\n<div id=\"answer-21326156\" class=\"answer js-answer accepted-answer js-accepted-answer\" data-answerid=\"21326156\" data-parentid=\"21325949\" data-score=\"1\" data-position-on-page=\"1\" data-highest-scored=\"1\" data-question-has-accepted-highest-score=\"1\" itemprop=\"acceptedAnswer\" itemscope itemtype=\"https:\/\/schema.org\/Answer\">\n<div class=\"post-layout\">\n<div class=\"votecell post-layout--left\"><\/div>\n<div class=\"answercell post-layout--right\">\n<div class=\"s-prose js-post-body\" itemprop=\"text\">\n<p>You are using the <code>*<\/code> to separate &#8220;main items&#8221; but it can also be inside the main item.<\/p>\n<p>Your requirements look odd, but lets assume for the sake of argument that you are getting your input data like this and you want to split it like you suggested.<br \/>\nThat means that every <code>*<\/code> that is preceded by a number is a separator, but a <code>*<\/code> that is not preceded by a number is not.<\/p>\n<p>You can achieve that using regular expressions: (with a positive look-behind expression <code>(?&lt;=<\/code><em>expr<\/em><code>)<\/code><\/p>\n<pre><code>    String str = \"USA*2*Japan*8^2*India*5^4^2*Germany*5\";\n    List&lt;String&gt; lst = Arrays.asList(Pattern.compile(\"(?&lt;=\\\\d)\\\\*\").split(str));\n    System.out.println(lst);\n<\/code><\/pre>\n<p>Prints:<\/p>\n<pre><code>[USA*2, Japan*8^2, India*5^4^2, Germany*5]\n<\/code><\/pre>\n<p>After further clarification in the comment below, it seems that the problem is more generic than the initial example; the question becomes:<\/p>\n<blockquote>\n<p>How do I split a string on a separator, but only after 2 occurrences<br \/>\n  of the separator.<\/p>\n<\/blockquote>\n<p>Although it&#8217;s possible to do with a regex, it may be easier to do and understand in a for loop like this:<\/p>\n<pre><code>public static List&lt;String&gt; split(String str, char splitChar, int afterOccurrences) {\n    List&lt;String&gt; lst = new ArrayList&lt;&gt;();\n    int occurrencesSeen = 0;\n    int start = 0;\n    for (int i = 0; i &lt; str.length(); i++) {\n        char ch = str.charAt(i);\n        if (ch == splitChar) {\n            occurrencesSeen++;\n            if (occurrencesSeen &gt;= afterOccurrences) {\n                lst.add(str.substring(start, i));\n                start = i + 1;\n                occurrencesSeen = 0;\n            }\n        }\n    }\n    if (start &lt; str.length() - 1)\n        lst.add(str.substring(start));\n    return lst;\n}\n\npublic static void main(String[] args) {\n    String str = \"USA*2*Japan*8^2*India*5^4^2*Germany*5\";\n    System.out.println(split(str, '*', 2));\n}\n<\/code><\/pre>\n<p>This method also allows you to split after 3 or any other number of occurrences.<\/p>\n<\/p><\/div>\n<div class=\"mt24\"><\/div>\n<\/div>\n<p>            <span class=\"d-none\" itemprop=\"commentCount\">6<\/span> <\/p><\/div>\n<\/div>\n<p>[ad_2]<\/p>\n<p>solved how to create array from string in java with respective data items [closed] <\/p>\n","protected":false},"excerpt":{"rendered":"<p>[ad_1] You are using the * to separate &#8220;main items&#8221; but it can also be inside the main item. Your requirements look odd, but lets assume for the sake of argument that you are getting your input data like this and you want to split it like you suggested. That means that every * that &#8230; <a title=\"[Solved] how to create array from string in java with respective data items [closed]\" class=\"read-more\" href=\"https:\/\/jassweb.com\/solved\/solved-how-to-create-array-from-string-in-java-with-respective-data-items-closed\/\" aria-label=\"More on [Solved] how to create array from string in java with respective data items [closed]\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[320],"tags":[361,323],"class_list":["post-24136","post","type-post","status-publish","format-standard","hentry","category-solved","tag-arrays","tag-java"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>[Solved] how to create array from string in java with respective data items [closed] - JassWeb<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/jassweb.com\/solved\/solved-how-to-create-array-from-string-in-java-with-respective-data-items-closed\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"[Solved] how to create array from string in java with respective data items [closed] - JassWeb\" \/>\n<meta property=\"og:description\" content=\"[ad_1] You are using the * to separate &#8220;main items&#8221; but it can also be inside the main item. Your requirements look odd, but lets assume for the sake of argument that you are getting your input data like this and you want to split it like you suggested. That means that every * that ... Read more\" \/>\n<meta property=\"og:url\" content=\"https:\/\/jassweb.com\/solved\/solved-how-to-create-array-from-string-in-java-with-respective-data-items-closed\/\" \/>\n<meta property=\"og:site_name\" content=\"JassWeb\" \/>\n<meta property=\"article:published_time\" content=\"2022-11-30T11:13:09+00:00\" \/>\n<meta name=\"author\" content=\"Kirat\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Kirat\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/jassweb.com\/solved\/solved-how-to-create-array-from-string-in-java-with-respective-data-items-closed\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/jassweb.com\/solved\/solved-how-to-create-array-from-string-in-java-with-respective-data-items-closed\/\"},\"author\":{\"name\":\"Kirat\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31\"},\"headline\":\"[Solved] how to create array from string in java with respective data items [closed]\",\"datePublished\":\"2022-11-30T11:13:09+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/jassweb.com\/solved\/solved-how-to-create-array-from-string-in-java-with-respective-data-items-closed\/\"},\"wordCount\":190,\"publisher\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#organization\"},\"keywords\":[\"arrays\",\"java\"],\"articleSection\":[\"Solved\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/jassweb.com\/solved\/solved-how-to-create-array-from-string-in-java-with-respective-data-items-closed\/\",\"url\":\"https:\/\/jassweb.com\/solved\/solved-how-to-create-array-from-string-in-java-with-respective-data-items-closed\/\",\"name\":\"[Solved] how to create array from string in java with respective data items [closed] - JassWeb\",\"isPartOf\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#website\"},\"datePublished\":\"2022-11-30T11:13:09+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/jassweb.com\/solved\/solved-how-to-create-array-from-string-in-java-with-respective-data-items-closed\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/jassweb.com\/solved\/solved-how-to-create-array-from-string-in-java-with-respective-data-items-closed\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/jassweb.com\/solved\/solved-how-to-create-array-from-string-in-java-with-respective-data-items-closed\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/jassweb.com\/solved\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"[Solved] how to create array from string in java with respective data items [closed]\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/jassweb.com\/solved\/#website\",\"url\":\"https:\/\/jassweb.com\/solved\/\",\"name\":\"JassWeb\",\"description\":\"Build High-quality Websites\",\"publisher\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/jassweb.com\/solved\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/jassweb.com\/solved\/#organization\",\"name\":\"Jass Web\",\"url\":\"https:\/\/jassweb.com\/solved\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png\",\"contentUrl\":\"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png\",\"width\":693,\"height\":132,\"caption\":\"Jass Web\"},\"image\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31\",\"name\":\"Kirat\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1776403586\",\"contentUrl\":\"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1776403586\",\"caption\":\"Kirat\"},\"sameAs\":[\"http:\/\/jassweb.com\"],\"url\":\"https:\/\/jassweb.com\/solved\/author\/jaspritsinghghumangmail-com\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"[Solved] how to create array from string in java with respective data items [closed] - JassWeb","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/jassweb.com\/solved\/solved-how-to-create-array-from-string-in-java-with-respective-data-items-closed\/","og_locale":"en_US","og_type":"article","og_title":"[Solved] how to create array from string in java with respective data items [closed] - JassWeb","og_description":"[ad_1] You are using the * to separate &#8220;main items&#8221; but it can also be inside the main item. Your requirements look odd, but lets assume for the sake of argument that you are getting your input data like this and you want to split it like you suggested. That means that every * that ... Read more","og_url":"https:\/\/jassweb.com\/solved\/solved-how-to-create-array-from-string-in-java-with-respective-data-items-closed\/","og_site_name":"JassWeb","article_published_time":"2022-11-30T11:13:09+00:00","author":"Kirat","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Kirat","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/jassweb.com\/solved\/solved-how-to-create-array-from-string-in-java-with-respective-data-items-closed\/#article","isPartOf":{"@id":"https:\/\/jassweb.com\/solved\/solved-how-to-create-array-from-string-in-java-with-respective-data-items-closed\/"},"author":{"name":"Kirat","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31"},"headline":"[Solved] how to create array from string in java with respective data items [closed]","datePublished":"2022-11-30T11:13:09+00:00","mainEntityOfPage":{"@id":"https:\/\/jassweb.com\/solved\/solved-how-to-create-array-from-string-in-java-with-respective-data-items-closed\/"},"wordCount":190,"publisher":{"@id":"https:\/\/jassweb.com\/solved\/#organization"},"keywords":["arrays","java"],"articleSection":["Solved"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/jassweb.com\/solved\/solved-how-to-create-array-from-string-in-java-with-respective-data-items-closed\/","url":"https:\/\/jassweb.com\/solved\/solved-how-to-create-array-from-string-in-java-with-respective-data-items-closed\/","name":"[Solved] how to create array from string in java with respective data items [closed] - JassWeb","isPartOf":{"@id":"https:\/\/jassweb.com\/solved\/#website"},"datePublished":"2022-11-30T11:13:09+00:00","breadcrumb":{"@id":"https:\/\/jassweb.com\/solved\/solved-how-to-create-array-from-string-in-java-with-respective-data-items-closed\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/jassweb.com\/solved\/solved-how-to-create-array-from-string-in-java-with-respective-data-items-closed\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/jassweb.com\/solved\/solved-how-to-create-array-from-string-in-java-with-respective-data-items-closed\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/jassweb.com\/solved\/"},{"@type":"ListItem","position":2,"name":"[Solved] how to create array from string in java with respective data items [closed]"}]},{"@type":"WebSite","@id":"https:\/\/jassweb.com\/solved\/#website","url":"https:\/\/jassweb.com\/solved\/","name":"JassWeb","description":"Build High-quality Websites","publisher":{"@id":"https:\/\/jassweb.com\/solved\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/jassweb.com\/solved\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/jassweb.com\/solved\/#organization","name":"Jass Web","url":"https:\/\/jassweb.com\/solved\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/","url":"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png","contentUrl":"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png","width":693,"height":132,"caption":"Jass Web"},"image":{"@id":"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31","name":"Kirat","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/person\/image\/","url":"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1776403586","contentUrl":"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1776403586","caption":"Kirat"},"sameAs":["http:\/\/jassweb.com"],"url":"https:\/\/jassweb.com\/solved\/author\/jaspritsinghghumangmail-com\/"}]}},"_links":{"self":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/posts\/24136","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/comments?post=24136"}],"version-history":[{"count":0,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/posts\/24136\/revisions"}],"wp:attachment":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/media?parent=24136"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/categories?post=24136"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/tags?post=24136"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}