Make Split more flexible so it can be used to join

This commit is contained in:
Chris van Marle 2018-01-17 15:52:25 +01:00
parent aa6890432c
commit 90d8be48d4
2 changed files with 24 additions and 8 deletions

View File

@ -2125,13 +2125,13 @@ const OperationConfig = {
args: [
{
name: "Split delimiter",
type: "binaryShortString",
value: StrUtils.SPLIT_DELIM
type: "editableOption",
value: StrUtils.SPLIT_DELIM_OPTIONS
},
{
name: "Join delimiter",
type: "option",
value: StrUtils.DELIMITER_OPTIONS
type: "editableOption",
value: StrUtils.JOIN_DELIM_OPTIONS
}
]
},

View File

@ -65,12 +65,28 @@ const StrUtils = {
* @constant
* @default
*/
SPLIT_DELIM: ",",
SPLIT_DELIM_OPTIONS: [
{name: "Line feed", value: "\\n"},
{name: "CRLF", value: "\\r\\n"},
{name: "Space", value: " "},
{name: "Comma", value: ","},
{name: "Semi-colon", value: ";"},
{name: "Colon", value: ":"},
{name: "Nothing (separate chars)", value: ""}
],
/**
* @constant
* @default
*/
DELIMITER_OPTIONS: ["Line feed", "CRLF", "Space", "Comma", "Semi-colon", "Colon", "Nothing (separate chars)"],
JOIN_DELIM_OPTIONS: [
{name: "Line feed", value: "\\n"},
{name: "CRLF", value: "\\r\\n"},
{name: "Space", value: " "},
{name: "Comma", value: ","},
{name: "Semi-colon", value: ";"},
{name: "Colon", value: ":"},
{name: "Nothing (join chars)", value: ""}
],
/**
* Split operation.
@ -80,8 +96,8 @@ const StrUtils = {
* @returns {string}
*/
runSplit: function(input, args) {
let splitDelim = args[0] || StrUtils.SPLIT_DELIM,
joinDelim = Utils.charRep[args[1]],
let splitDelim = args[0],
joinDelim = args[1],
sections = input.split(splitDelim);
return sections.join(joinDelim);