{"id":112469,"date":"2021-09-07T11:54:28","date_gmt":"2021-09-07T02:54:28","guid":{"rendered":"https:\/\/support.questetra.com\/?p=112469"},"modified":"2023-08-22T12:17:38","modified_gmt":"2023-08-22T03:17:38","slug":"tsv-string-verify-rectangle-2021","status":"publish","type":"post","link":"https:\/\/support.questetra.com\/en\/addons\/tsv-string-verify-rectangle-2021\/","title":{"rendered":"TSV String, Verify Rectangle"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\"><div class=\"su-box su-box-style-soft\" id=\"\" style=\"border-color:#cc66cc;border-radius:0px;max-width:none\"><div class=\"su-box-title\" style=\"background-color:#ff99ff;color:#000000;border-top-left-radius:0px;border-top-right-radius:0px\">TSV String, Verify Rectangle<\/div><div class=\"su-box-content su-u-clearfix su-u-trim\" style=\"border-bottom-left-radius:0px;border-bottom-right-radius:0px\"> Verifies that the cells are in a matrix format. If the number of cell values are different for each row, tabs will be added. It is also possible to get the number of rows and columns after formatting. No trailing newline will be added to the verified TSV.<\/div><\/div>\n\n\n<div class=\"su-spoiler su-spoiler-style-modern-light su-spoiler-icon-plus-square-1\" data-anchor=\"configs\" data-scroll-offset=\"0\" data-anchor-in-url=\"no\"><div class=\"su-spoiler-title\" tabindex=\"0\" role=\"button\"><span class=\"su-spoiler-icon\"><\/span>Configs<\/div><div class=\"su-spoiler-content su-u-clearfix su-u-trim\">\n<ul class=\"fa-ul\">\n<li><span class=\"fa-li\"><i class=\"far fa-edit fa-lg\"><\/i><\/span> A1: Set TSV<span style=\"color:#990000;\"> *<\/span><span style=\"color:#000099;\"><sup style=\"font-style:italic;\">#{EL}<\/sup><\/span><\/li>\n<li><span class=\"fa-li\"><i class=\"fal fa-caret-square-down fa-lg\"><\/i><\/span> B1: Select STRING DATA that stores Output TSV (update)<\/li>\n<li><span class=\"fa-li\"><i class=\"fal fa-caret-square-down fa-lg\"><\/i><\/span> B2: Select NUMERIC DATA that stores Number of Rows (update)<\/li>\n<li><span class=\"fa-li\"><i class=\"fal fa-caret-square-down fa-lg\"><\/i><\/span> B3: Select NUMERIC DATA that stores Number of Columns (update)<\/li>\n<\/ul>\n<\/div><\/div>\n\n\n<div class=\"su-spoiler su-spoiler-style-modern-light su-spoiler-icon-plus-square-1 su-spoiler-closed\" data-anchor=\"script\" data-scroll-offset=\"0\" data-anchor-in-url=\"no\"><div class=\"su-spoiler-title\" tabindex=\"0\" role=\"button\"><span class=\"su-spoiler-icon\"><\/span>Script (click to open)<\/div><div class=\"su-spoiler-content su-u-clearfix su-u-trim\">\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\"><code>\/\/ GraalJS Script (engine type: 2)\n\n\/\/\/\/\/\/\/\/ START &quot;main()&quot; \/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\nmain();\nfunction main(){ \n\n\/\/\/\/ == Config Retrieving \/ \u5de5\u7a0b\u30b3\u30f3\u30d5\u30a3\u30b0\u306e\u53c2\u7167 ==\nconst strTsv          = configs.get( &quot;StrConfA1&quot; );           \/\/\/ REQUIRED \/\/\/\/\/\/\/\/\/\/\/\/\/\n  if( strTsv        === &quot;&quot; ){\n    throw new Error( &quot;\\n AutomatedTask ConfigError:&quot; +\n                     &quot; Config {A1: Tsv} is empty \\n&quot; );\n  }\n  const arr2dTsv      = parseAsRectangular( strTsv );\nconst strPocketOutput       = configs.getObject( &quot;SelectConfB1&quot; );  \/\/ NotRequired \/\/\/\/\/\nconst numPocketNumOfRows    = configs.getObject( &quot;SelectConfB2&quot; );  \/\/ NotRequired \/\/\/\/\/\nconst numPocketNumOfColumns = configs.getObject( &quot;SelectConfB3&quot; );  \/\/ NotRequired \/\/\/\/\/\n\n\n\/\/\/\/ == Data Retrieving \/ \u30ef\u30fc\u30af\u30d5\u30ed\u30fc\u30c7\u30fc\u30bf\u306e\u53c2\u7167 ==\n\/\/ (Nothing. Retrieved via Expression Language in Config Retrieving)\n\n\n\/\/\/\/ == Calculating \/ \u6f14\u7b97 ==\n\n\/\/ output TSV\nlet strOutput = &quot;&quot;;\nfor( let i = 0; i &lt; arr2dTsv.length; i++ ){\n  strOutput += arr2dTsv[i].join(&quot;\\t&quot;) + &quot;\\n&quot;;\n}\nstrOutput = strOutput.slice( 0, -1 ); \/\/ delete last &quot;\\n&quot;\n\n\n\/\/\/\/ == Data Updating \/ \u30ef\u30fc\u30af\u30d5\u30ed\u30fc\u30c7\u30fc\u30bf\u3078\u306e\u4ee3\u5165 ==\nif( strPocketOutput !== null ){\n  engine.setData( strPocketOutput, strOutput );\n}\nif( numPocketNumOfRows !== null ){\n  engine.setData( numPocketNumOfRows, new java.math.BigDecimal( arr2dTsv.length ) );\n}\nif( numPocketNumOfColumns !== null ){\n  engine.setData( numPocketNumOfColumns, new java.math.BigDecimal( arr2dTsv[0].length ) );\n}\n\n\n} \/\/\/\/\/\/\/\/ END &quot;main()&quot; \/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\n\n\n\/\/ Parses TSV string as two-dimensional rectangular data matrix and creates a 2D array.\nfunction parseAsRectangular( strTsv ){\n  const arrTsv = strTsv.split(&quot;\\n&quot;);\n\n  \/\/\/ Get numMinWidth and numMaxWidth (blank lines are excluded)\n  let numMinWidth   = Infinity; \/\/ cf. String-Type Max: 1 million\n  let numMaxWidth   = 0;\n  let numBlanklines = 0;\n  for( let i = 0; i &lt; arrTsv.length; i++ ){\n    if( arrTsv[i] === &quot;&quot; ){ \/\/ Skip blank lines\n      numBlanklines += 1;\n      continue;\n    }\n    let arrCells = arrTsv[i].split(&quot;\\t&quot;);\n    if( numMinWidth &gt; arrCells.length ){ numMinWidth = arrCells.length; }\n    if( numMaxWidth &lt; arrCells.length ){ numMaxWidth = arrCells.length; }\n  }\n  engine.log( &quot; AutomatedTask TsvDataCheck:&quot; + \n              &quot; MinWidth:&quot; + numMinWidth +\n              &quot; MaxWidth:&quot; + numMaxWidth +\n              &quot; Lines:&quot; + arrTsv.length +\n              &quot; (BlankLines:&quot; + numBlanklines + &quot;)&quot; );\n\n  \/\/\/ Get numMinWidth and numMaxWidth (blank lines are excluded)\n  let arr2dTsv      = [];\n  for( let i = 0; i &lt; arrTsv.length; i++ ){\n    if( arrTsv[i] === &quot;&quot; ){ \/\/ Skip blank lines\n      continue;\n    }\n    let arrTmp = [];\n    let arrCells = arrTsv[i].split(&quot;\\t&quot;);\n    for( let j = 0; j &lt; numMaxWidth; j++ ){\n      if( j &lt; arrCells.length ){\n        arrTmp[j] = arrCells[j];\n      }else{\n        arrTmp[j] = &quot;&quot;;\n      }\n    }\n    arr2dTsv.push( arrTmp );\n  }\n\n  return arr2dTsv;\n}\n\n\/*\nNotes:\n- When the process reaches this automated task, TSV is automatically read.\n    - TSV: Monthly sales, monthly access log, etc.\n- If there is a blank line in the input TSV text, it will be skipped.\n    - The output TSV is rectangular data. There are no blank lines.\n    - No line feed code is added to the last line of the output TSV.\n\nAPPENDIX:\n- TSV data that is not rectangular is automatically formatted with an empty string.\n    - Tabs are added according to the row with the largest number of columns.\n    - However, lines with only line breaks (blank lines) are skipped.\n\n\nNotes-ja:\n- \u6848\u4ef6\u304c\u81ea\u52d5\u51e6\u7406\u5de5\u7a0b\u306b\u5230\u9054\u3057\u305f\u969b\u3001\u6587\u5b57\u5217\u578b\u30c7\u30fc\u30bf\u306b\u4fdd\u5b58\u3055\u308c\u3066\u3044\u308bTSV\u304c\u81ea\u52d5\u7684\u306b\u8aad\u307f\u8fbc\u307e\u308c\u307e\u3059\u3002\n    - TSV: \u6708\u6b21\u58f2\u4e0a\u3001\u6708\u6b21\u30a2\u30af\u30bb\u30b9\u30ed\u30b0\u3001\u306a\u3069\n- \u5165\u529bTSV\u30c6\u30ad\u30b9\u30c8\u306b\u7a7a\u884c\u304c\u3042\u308b\u5834\u5408\u3001\u30b9\u30ad\u30c3\u30d7\u3055\u308c\u307e\u3059\u3002\n    - \u51fa\u529bTSV\u306f\u77e9\u5f62\u30c7\u30fc\u30bf\u3068\u306a\u308a\u307e\u3059\u3002\u7a7a\u884c\u306f\u5b58\u5728\u3057\u307e\u305b\u3093\u3002\n    - \u51fa\u529bTSV\u306e\u6700\u7d42\u884c\u306b\u6539\u884c\u30b3\u30fc\u30c9\u306f\u4ed8\u4e0e\u3055\u308c\u307e\u305b\u3093\u3002\n\nAPPENDIX-ja:\n- \u77e9\u5f62\u3067\u306a\u3044TSV\u30c7\u30fc\u30bf\u306f\u3001\u7a7a\u6587\u5b57\u306b\u3088\u3063\u3066\u81ea\u52d5\u6574\u5f62\u3055\u308c\u307e\u3059\u3002\n    - \u3082\u3063\u3068\u3082\u5217\u6570\uff08\u30bf\u30d6\u6570\uff09\u304c\u591a\u3044\u884c\u306b\u3042\u308f\u305b\u3066\u3001\u30bf\u30d6\u304c\u8ffd\u52a0\u3055\u308c\u307e\u3059\u3002\n    - \u305f\u3060\u3057\u3001\u6539\u884c\u306e\u307f\u306e\u884c\uff08\u7a7a\u884c\uff09\u306f\u3001\u30b9\u30ad\u30c3\u30d7\u3055\u308c\u307e\u3059\u3002\n*\/\n\n<\/code><\/pre><\/div>\n\n\n<\/div><\/div>\n\n\n\n<figure class=\"wp-block-image alignright\"><a href=\"#\"><img decoding=\"async\" src=\"data:image;base64,\niVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAA5BJREFUWEfF\nl1tIFFEYx3\/jLSu7aBERdgFFKzbJghJ82C5CSZYQQSX1sBXuughZG2gP9ZwgJSG5RuZDYfsUdJEu\n5JbgkhUkbJkVPmRZZLe1crXyMjGzTbtuuztno9jzNjPn+5\/\/+c7\/+\/5nJGI8JOH1G5iCzFYk1iKT\ni8QiIPVXvAeZF0h0InMbiYuYGRLB1ifQxFx+UAlYgGQRUOAbYCeJaky8jRQTmYAdCxI1wFTBhYOn\neZE5hAV7uPjwBBo4BZT95cLBYfWYsYbCCk3ATjMSO\/\/R4j4YmQtYKAnG\/JPAv925biYmEvCdeb3I\nzjct2ERyfDI3+27ydeSrSIiWibJATfgJ+NTeIyK4kswS6vLrSIxLpPJeJaeeKHIRHl6SyNSqw0+g\ngRNAhQhMo7ERU7YJCYnW160UtBSIhAXOqcXMAeWFj4DSZOCjSJ1nzcji8obLZM\/MVkM93z2Uu8pp\n7mmOhoTSJ2YpzcpHwM4uJM6JIBxefpijK4+q5+8Tt4yjx0GJ8w+BR4aT2Y2F81oGGoE9IgSubrzK\nunnrGJPHSElMUUN6B3vZcWsHHe86RCC0OWcxs1fLwEMkcvWiC+cX0rSmieefnzPwfYCihUWqDkbG\nRzjuPk7V\/So9CP93mU4srNAy8CnAWMKCKMrft3gftY9qcX9yq5WQOsnnR50fOjFeMUZTkh7MpGkE\nZD3q0xKn0ba5jbTkNDXdXZ4u9Tl3ti9xgyOD0ZekGUmYgHWplerV1TjfOCm+UawuWpNXw37DfhLi\nEtTnlpctFF0v0tuL\/3sAAd0jcKx3sD1je0Tw\/uF+THdMXHt1TYREwBHYiSjCvDl5OAocjI2P4ep3\nTQA3pBp+H8O4PM7p7tOUtQuYaJAII5bhsVXHqFhWwZmnZ9SmEzi0o9FK8tnAM7bc2KJWis6YUIYR\nG5Gr2EXG9IyQ6dXEqYnRO+ql6l4VdV11UTWisK1YM57ugW7yL+WHBFUydDDnoGpOgmIMasVKVAgz\nUjrekRVHMM4z0v62HdtdGw\/eP5hAIn1qOqVLSrHl2JiSoOwDtRecfHwS+xM7fd6+UKSDzEiZEmTH\n7m1uDGkGhkaHUMQVJ8WpCzhfO3+7n0JO8Yak+CSGR4dVX1BGvBTP5ITJfPnxBWu7NdiowtixEhnF\nhURPYWG\/y4S5kGgRMb2SaSRiein9P5mI8lruz0QMf0w0EjH9NQuUcsx+Tv+63sQCfwL9gFkwfk0h\nYgAAAABJRU5ErkJggg==\n\" alt=\"\"\/><\/a><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><i class=\"fal fa-cloud-download-alt\"><\/i> Download<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a rel=\"noreferrer noopener\" href=\"https:\/\/drive.google.com\/file\/d\/1zbh02KRk1zFDCGhkBaD_5hoYi27odg0h\/view?usp=drivesdk\" target=\"_blank\">Tsv-String-Verify-Rectangle-2021.xml<\/a>\n<ul class=\"wp-block-list\">\n<li>2021-09-05 (C) Questetra, Inc. (MIT License)<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><a href=\"https:\/\/drive.google.com\/file\/d\/1-C0shZ2EYo-g-hE7BfT4HXgv9F7UTNKK\/view?usp=sharing\" target=\"_blank\" rel=\"noreferrer noopener\">Tsv-String-Verify-Rectangle-2023.xml<\/a>\n<ul class=\"wp-block-list\">\n<li>2023-08-21 (C) Questetra, Inc. (MIT License)<\/li>\n\n\n\n<li>for &#8220;GraalJS standard (engine-type 3)&#8221; on v15.0 or above<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p class=\"has-text-align-right has-small-font-size wp-block-paragraph\"> The Add-on import feature is available with <span style=\"background-color:rgba(0, 0, 0, 0);color:#4a86e8\" class=\"has-inline-color\"><strong>Professional<\/strong><\/span> edition.<br>Freely modifiable JavaScript (ECMAScript) code. No warranty of any kind.<\/p>\n\n\n<div class=\"su-divider su-divider-style-dashed\" style=\"margin:30px 0;border-width:8px;border-color:#009900\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\"><i class=\"fal fa-lightbulb-exclamation\"><\/i> Notes<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>When the process reaches this automated task, TSVs stored in String-type data will be read automatically.\n<ul class=\"wp-block-list\">\n<li>TSV: monthly sales, monthly access log, etc.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>If there is a blank line in the input TSV text, it will be skipped.\n<ul class=\"wp-block-list\">\n<li>The output TSV will be rectangular data. There are no blank lines.<\/li>\n\n\n\n<li>No line feed code is added to the last line of the output TSV.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><i class=\"fal fa-images\"><\/i> Capture<\/h3>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-capture-en.png?ssl=1\" target=\"_blank\" rel=\"noopener\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1200\" height=\"675\" data-attachment-id=\"112457\" data-permalink=\"https:\/\/support.questetra.com\/en\/maintenance\/maintenance-20251117\/attachment\/tsv-string-verify-rectangle-2021-capture-en\/\" data-orig-file=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-capture-en.png?fit=1200%2C675&amp;ssl=1\" data-orig-size=\"1200,675\" data-comments-opened=\"0\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"tsv-string-verify-rectangle-2021-capture-en\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-capture-en.png?fit=1024%2C576&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-capture-en.png?resize=1200%2C675&#038;ssl=1\" alt=\"Verifies that the cells are in a matrix format. If the number of cell values are different for each row, tabs will be added. Also possible to get the number of rows and columns after formatting. No trailing newline in the verified TSV.\" class=\"wp-image-112457\" srcset=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-capture-en.png?w=1200&amp;ssl=1 1200w, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-capture-en.png?resize=560%2C315&amp;ssl=1 560w, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-capture-en.png?resize=1024%2C576&amp;ssl=1 1024w, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-capture-en.png?resize=768%2C432&amp;ssl=1 768w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large is-style-default q-box\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"913\" height=\"630\" data-attachment-id=\"112461\" data-permalink=\"https:\/\/support.questetra.com\/en\/maintenance\/maintenance-20251117\/attachment\/tsv-string-verify-rectangle-2021-config-en\/\" data-orig-file=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-config-en.png?fit=1200%2C828&amp;ssl=1\" data-orig-size=\"1200,828\" data-comments-opened=\"0\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"tsv-string-verify-rectangle-2021-config-en\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-config-en.png?fit=913%2C630&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-config-en-913x630.png?resize=913%2C630&#038;ssl=1\" alt=\"Verifies that the cells are in a matrix format. If the number of cell values are different for each row, tabs will be added. Also possible to get the number of rows and columns after formatting. No trailing newline in the verified TSV.\" class=\"wp-image-112461\" srcset=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-config-en.png?resize=913%2C630&amp;ssl=1 913w, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-config-en.png?resize=457%2C315&amp;ssl=1 457w, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-config-en.png?resize=768%2C530&amp;ssl=1 768w, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-config-en.png?w=1200&amp;ssl=1 1200w\" sizes=\"auto, (max-width: 913px) 100vw, 913px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><i class=\"fal fa-book\"><\/i> Appendix<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>TSV data that is not rectangular is automatically formatted with an empty string.\n<ul class=\"wp-block-list\">\n<li>Tabs are added according to the row with the largest number of columns.<\/li>\n\n\n\n<li>However, lines with only line breaks (blank lines) are skipped.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><i class=\"fal fa-balance-scale\"><\/i> See also<\/h3>\n\n\n\n<figure class=\"wp-block-embed is-type-wp-embed is-provider-questetra-support wp-block-embed-questetra-support\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"wp-embedded-content\" data-secret=\"M4NEX22k5u\"><a href=\"https:\/\/support.questetra.com\/en\/addons\/tsv-string-convert-2021\/\">TSV String, Convert<\/a><\/blockquote><iframe loading=\"lazy\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; clip: rect(1px, 1px, 1px, 1px);\" title=\"&#8220;TSV String, Convert&#8221; &#8212; Questetra Support\" src=\"https:\/\/support.questetra.com\/addons\/tsv-string-convert-2021\/embed\/#?secret=tRROs0gEII#?secret=M4NEX22k5u\" data-secret=\"M4NEX22k5u\" width=\"500\" height=\"282\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe>\n<\/div><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>Verifies that the cells are in a matrix format. If the number of cell values are different for each row, tabs will be added. It is also possible to get the number of rows and columns after formatting. No trailing newline will be added to the verified TSV.<\/p>\n","protected":false},"author":2,"featured_media":112465,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_coblocks_attr":"","_coblocks_dimensions":"","_coblocks_responsive_height":"","_coblocks_accordion_ie_support":"","_uag_custom_page_level_css":"","advanced_seo_description":"Verifies that the cells are in a matrix format. If the number of cell values are different for each row, tabs will be added. Also possible to get the number of rows and columns after formatting. No trailing newline in the verified TSV.","jetpack_seo_html_title":"","jetpack_seo_noindex":false,"jetpack_seo_schema_type":"","_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_wpcom_ai_launchpad_first_post":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"{title}\n\n{excerpt}\n\n{url}","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"_wpas_customize_per_network":false,"jetpack_post_was_ever_published":false},"categories":[168],"tags":[365,389,2535],"class_list":["post-112469","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-addons","tag-easy-config-addon","tag-tsv-csv","tag-workflow-automation"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-nocode-en.png?fit=1200%2C675&ssl=1","uagb_featured_image_src":{"full":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-nocode-en.png?fit=1200%2C675&ssl=1",1200,675,false],"thumbnail":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-nocode-en.png?resize=440%2C440&ssl=1",440,440,true],"medium":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-nocode-en.png?fit=560%2C315&ssl=1",560,315,true],"medium_large":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-nocode-en.png?fit=768%2C432&ssl=1",768,432,true],"large":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-nocode-en.png?fit=1024%2C576&ssl=1",1024,576,true],"1536x1536":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-nocode-en.png?fit=1200%2C675&ssl=1",1200,675,true],"2048x2048":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-nocode-en.png?fit=1200%2C675&ssl=1",1200,675,true],"newspack-article-block-landscape-large":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-nocode-en.png?resize=1200%2C675&ssl=1",1200,675,true],"newspack-article-block-portrait-large":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-nocode-en.png?resize=900%2C675&ssl=1",900,675,true],"newspack-article-block-square-large":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-nocode-en.png?resize=1200%2C675&ssl=1",1200,675,true],"newspack-article-block-landscape-medium":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-nocode-en.png?resize=800%2C600&ssl=1",800,600,true],"newspack-article-block-portrait-medium":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-nocode-en.png?resize=600%2C675&ssl=1",600,675,true],"newspack-article-block-square-medium":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-nocode-en.png?resize=800%2C675&ssl=1",800,675,true],"newspack-article-block-landscape-intermediate":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-nocode-en.png?resize=600%2C450&ssl=1",600,450,true],"newspack-article-block-portrait-intermediate":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-nocode-en.png?resize=450%2C600&ssl=1",450,600,true],"newspack-article-block-square-intermediate":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-nocode-en.png?resize=600%2C600&ssl=1",600,600,true],"newspack-article-block-landscape-small":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-nocode-en.png?resize=400%2C300&ssl=1",400,300,true],"newspack-article-block-portrait-small":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-nocode-en.png?resize=300%2C400&ssl=1",300,400,true],"newspack-article-block-square-small":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-nocode-en.png?resize=400%2C400&ssl=1",400,400,true],"newspack-article-block-landscape-tiny":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-nocode-en.png?resize=200%2C150&ssl=1",200,150,true],"newspack-article-block-portrait-tiny":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-nocode-en.png?resize=150%2C200&ssl=1",150,200,true],"newspack-article-block-square-tiny":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-nocode-en.png?resize=200%2C200&ssl=1",200,200,true],"newspack-article-block-uncropped":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-verify-rectangle-2021-nocode-en.png?fit=1200%2C675&ssl=1",1200,675,true]},"uagb_author_info":{"display_name":"IMAMURA, Genichi","author_link":"https:\/\/support.questetra.com\/en\/author\/imamuragenichi\/"},"uagb_comment_info":0,"uagb_excerpt":"Verifies that the cells are in a matrix format. If the number of cell values are different for each row, tabs will be added. It is also possible to get the number of rows and columns after formatting. No trailing newline will be added to the verified TSV.","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p9DiIh-tg1","jetpack_likes_enabled":true,"jetpack-related-posts":[{"id":81186,"url":"https:\/\/support.questetra.com\/en\/addons\/google-sheets-values-export-as-tsv\/","url_meta":{"origin":112469,"position":0},"title":"Google Sheets: Values, Export as TSV","author":"IMAMURA, Genichi","date":"2021-02-01","format":false,"excerpt":"Exports the values in the rectangular range as TSV text, which has the same number of tab delimiters on each line. Empty cells are regarded as the null string. Two range export are also supported: e.g. Freezed headings and recent data.","rel":"","context":"In &quot;Add-ons&quot;","block_context":{"text":"Add-ons","link":"https:\/\/support.questetra.com\/en\/category\/addons\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/10\/Google-Sheets-Values-Export-as-TSV-en.png?fit=1200%2C675&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/10\/Google-Sheets-Values-Export-as-TSV-en.png?fit=1200%2C675&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/10\/Google-Sheets-Values-Export-as-TSV-en.png?fit=1200%2C675&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/10\/Google-Sheets-Values-Export-as-TSV-en.png?fit=1200%2C675&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/10\/Google-Sheets-Values-Export-as-TSV-en.png?fit=1200%2C675&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":77998,"url":"https:\/\/support.questetra.com\/en\/addons\/tsv-string-add-static-value-to-all-lines\/","url_meta":{"origin":112469,"position":1},"title":"TSV String; Add Static Value to All Lines","author":"IMAMURA, Genichi","date":"2019-07-26","format":false,"excerpt":"Adds the new string cell to the end of all rows. If there are space characters or line feed characters at the beginning and end of the TSV, they will be deleted beforehand. If the number of tab separators does not match, an error will occur.","rel":"","context":"In &quot;Add-ons&quot;","block_context":{"text":"Add-ons","link":"https:\/\/support.questetra.com\/en\/category\/addons\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/07\/TSV-String-Add-Static-Value-to-All-Lines-en.png?fit=1200%2C675&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/07\/TSV-String-Add-Static-Value-to-All-Lines-en.png?fit=1200%2C675&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/07\/TSV-String-Add-Static-Value-to-All-Lines-en.png?fit=1200%2C675&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/07\/TSV-String-Add-Static-Value-to-All-Lines-en.png?fit=1200%2C675&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/07\/TSV-String-Add-Static-Value-to-All-Lines-en.png?fit=1200%2C675&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":112879,"url":"https:\/\/support.questetra.com\/en\/addons\/tsv-string-switch-rows-and-columns-2021\/","url_meta":{"origin":112469,"position":2},"title":"TSV String, Switch Rows and Columns","author":"IMAMURA, Genichi","date":"2021-09-13","format":false,"excerpt":"Switches the row and column indices of the rectangle TSV. The output matrix (Transposed Matrix) is obtained by changing cell(x,y) to (y,x). Used for data arrangement for frequency distribution tables and histograms.","rel":"","context":"In &quot;Add-ons&quot;","block_context":{"text":"Add-ons","link":"https:\/\/support.questetra.com\/en\/category\/addons\/"},"img":{"alt_text":"TSV String, Switch Rows and Columns","src":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-switch-rows-and-columns-2021-nocode-en.png?fit=1200%2C675&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-switch-rows-and-columns-2021-nocode-en.png?fit=1200%2C675&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-switch-rows-and-columns-2021-nocode-en.png?fit=1200%2C675&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-switch-rows-and-columns-2021-nocode-en.png?fit=1200%2C675&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/tsv-string-switch-rows-and-columns-2021-nocode-en.png?fit=1200%2C675&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":78242,"url":"https:\/\/support.questetra.com\/en\/addons\/tsv-string-add-prefix-to-column\/","url_meta":{"origin":112469,"position":3},"title":"TSV String; Add Prefix to Column","author":"IMAMURA, Genichi","date":"2019-08-02","format":false,"excerpt":"Generates a new TSV with concatenating the prefix Str to all cells in the column. The concatenated strings are added at the end of the line. Available at categorization etc. Removes whitespace from both ends of a string.","rel":"","context":"In &quot;Add-ons&quot;","block_context":{"text":"Add-ons","link":"https:\/\/support.questetra.com\/en\/category\/addons\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/08\/Tsv-String-Add-Prefix-to-Column-en.png?fit=1200%2C675&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/08\/Tsv-String-Add-Prefix-to-Column-en.png?fit=1200%2C675&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/08\/Tsv-String-Add-Prefix-to-Column-en.png?fit=1200%2C675&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/08\/Tsv-String-Add-Prefix-to-Column-en.png?fit=1200%2C675&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/08\/Tsv-String-Add-Prefix-to-Column-en.png?fit=1200%2C675&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":70950,"url":"https:\/\/support.questetra.com\/en\/addons\/tsv-filteringbynumber\/","url_meta":{"origin":112469,"position":4},"title":"TSV Filtering by Number","author":"Hirotaka NISHI","date":"2018-11-14","format":false,"excerpt":"Filter the rows on tab-delimited text (TSV) stored in String type Data Item by a range of numbers and save it","rel":"","context":"In &quot;Add-ons&quot;","block_context":{"text":"Add-ons","link":"https:\/\/support.questetra.com\/en\/category\/addons\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2018\/11\/tsv-filter-by-number-header.png?fit=1200%2C675&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2018\/11\/tsv-filter-by-number-header.png?fit=1200%2C675&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2018\/11\/tsv-filter-by-number-header.png?fit=1200%2C675&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2018\/11\/tsv-filter-by-number-header.png?fit=1200%2C675&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2018\/11\/tsv-filter-by-number-header.png?fit=1200%2C675&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":70961,"url":"https:\/\/support.questetra.com\/en\/addons\/tsv-filteringbydate\/","url_meta":{"origin":112469,"position":5},"title":"TSV Filtering by Date","author":"Hirotaka NISHI","date":"2018-11-14","format":false,"excerpt":"Filter a row in a tab-delimited text (TSV) stored in a String type Data Items by date range and save. dateString should be in a format recognized by the Date.parse() method. Date-only strings (e.g. \"1970-01-01\") are treated as UTC, not local. *Note dateString should be in a format recognized by\u2026","rel":"","context":"In &quot;Add-ons&quot;","block_context":{"text":"Add-ons","link":"https:\/\/support.questetra.com\/en\/category\/addons\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2018\/11\/tsv-filter-by-date-header.png?fit=1200%2C675&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2018\/11\/tsv-filter-by-date-header.png?fit=1200%2C675&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2018\/11\/tsv-filter-by-date-header.png?fit=1200%2C675&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2018\/11\/tsv-filter-by-date-header.png?fit=1200%2C675&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2018\/11\/tsv-filter-by-date-header.png?fit=1200%2C675&ssl=1&resize=1050%2C600 3x"},"classes":[]}],"amp_enabled":false,"_links":{"self":[{"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/posts\/112469","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/comments?post=112469"}],"version-history":[{"count":4,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/posts\/112469\/revisions"}],"predecessor-version":[{"id":149909,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/posts\/112469\/revisions\/149909"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/media\/112465"}],"wp:attachment":[{"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/media?parent=112469"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/categories?post=112469"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/tags?post=112469"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}