Mercurial > repos > iuc > regex_switch
annotate regex_switch.xml @ 0:8da8330208f4 draft default tip
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
| author | iuc |
|---|---|
| date | Thu, 09 Oct 2025 08:39:02 +0000 |
| parents | |
| children |
| rev | line source |
|---|---|
|
0
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
1 <tool name="Regex switch" id="regex_switch" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" tool_type="expression"> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
2 <description>boolean from regex on element identifier</description> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
3 <macros> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
4 <token name="@TOOL_VERSION@">1.0.0</token> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
5 <token name="@VERSION_SUFFIX@">0</token> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
6 </macros> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
7 <expression type="ecma5.1"><![CDATA[{ |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
8 var name = $job.input.name; |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
9 var pat = $job.pattern; |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
10 var matched = false; |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
11 |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
12 try { |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
13 var re = new RegExp(pat); |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
14 matched = re.test(name); |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
15 } catch (e) { |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
16 return { "__error_message": "Invalid regular expression: " + (e && e.message ? e.message : String(e)) }; |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
17 } |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
18 |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
19 return { "matched": matched, "unmatched": !matched }; |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
20 }]]></expression> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
21 <inputs> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
22 <param name="input" type="data" format="data" |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
23 label="Dataset" /> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
24 <param name="pattern" sanitize="false" type="text" label="Regex pattern" |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
25 help="Example: \.csv$"> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
26 <sanitizer> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
27 <valid> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
28 <add preset="string.printable"/> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
29 </valid> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
30 </sanitizer> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
31 <validator type="empty_field" message="Please enter a regular expression."/> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
32 </param> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
33 </inputs> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
34 <outputs> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
35 <output type="boolean" name="matched" from="matched" label="Match result"/> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
36 <output type="boolean" name="unmatched" from="unmatched" label="Unmatched result"/> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
37 </outputs> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
38 <tests> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
39 <test expect_num_outputs="2"> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
40 <param name="input" value="sample.csv" ftype="txt"/> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
41 <param name="pattern" value="\.csv$"/> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
42 <output name="matched" value_json="true"/> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
43 <output name="unmatched" value_json="false"/> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
44 </test> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
45 |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
46 <test expect_num_outputs="2"> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
47 <param name="input" value="table.tsv" ftype="txt"/> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
48 <param name="pattern" value="\.csv$"/> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
49 <output name="matched" value_json="false"/> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
50 <output name="unmatched" value_json="true"/> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
51 </test> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
52 </tests> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
53 <help><![CDATA[ |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
54 **Regex switch** |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
55 |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
56 Matches a regular expression against the name of the input file. It emits two booleans: |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
57 `matched` (the match result) and `unmatched` (its negation). Connect either to a step's **Conditionally skip step?** input. |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
58 |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
59 **Regex syntax reference:** https://262.ecma-international.org/16.0/index.html#sec-patterns |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
60 ]]></help> |
|
8da8330208f4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/regex_switch commit 502f06ff9cb9edd0eceaba726b2cc848757e34dd
iuc
parents:
diff
changeset
|
61 </tool> |
