Tweaks to 'Filter' operation.

This commit is contained in:
n1474335 2016-12-23 14:36:16 +00:00
parent ca87d54aa2
commit 216d8f1f7a
6 changed files with 27 additions and 26 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1765,8 +1765,9 @@ const OperationConfig = {
] ]
}, },
"Filter": { "Filter": {
description: "Filter the string with an regular expression", description: "Splits up the input using the specified delimiter and then filters each branch based on a regular expression.",
run: StrUtils.run_filter, run: StrUtils.run_filter,
manual_bake: true,
input_type: "string", input_type: "string",
output_type: "string", output_type: "string",
args: [ args: [

View File

@ -262,18 +262,18 @@ var StrUtils = {
return sections.join(join_delim); return sections.join(join_delim);
}, },
/** /**
* Filter by regex operation. * Filter operation.
* *
* @author Mikescher (https://github.com/Mikescher | https://mikescher.com) * @author Mikescher (https://github.com/Mikescher | https://mikescher.com)
*
* @param {string} input * @param {string} input
* @param {Object[]} args * @param {Object[]} args
* @returns {string} * @returns {string}
*/ */
run_filter: function(input, args) { run_filter: function(input, args) {
var delim = Utils.char_rep[args[0]]; var delim = Utils.char_rep[args[0]],
var reverse = args[2]; reverse = args[2];
try { try {
var regex = new RegExp(args[1]); var regex = new RegExp(args[1]);
@ -283,7 +283,7 @@ var StrUtils = {
const regex_filter = function(value) { const regex_filter = function(value) {
return reverse ^ regex.test(value); return reverse ^ regex.test(value);
} };
return input.split(delim).filter(regex_filter).join(delim); return input.split(delim).filter(regex_filter).join(delim);
}, },

View File

@ -1,9 +1,9 @@
206 source files 206 source files
113411 lines 113462 lines
4.2M size 4.2M size
137 JavaScript source files 137 JavaScript source files
104253 lines 104304 lines
3.7M size 3.7M size
79 third party JavaScript source files 79 third party JavaScript source files
@ -11,11 +11,11 @@
3.0M size 3.0M size
58 first party JavaScript source files 58 first party JavaScript source files
19201 lines 19252 lines
724K size 728K size
3.4M uncompressed JavaScript size 3.4M uncompressed JavaScript size
1.8M compressed JavaScript size 1.8M compressed JavaScript size
15 categories 15 categories
158 operations 159 operations