Ino String Split
Split on a delimiter and grab the piece you actually wanted
- part
- count
Comma-separated lists, semicolon-delimited tags, filenames with version numbers in them - there are a thousand strings where the information you want is "the third field." Ino String Split is the node for that: split a string on a delimiter and return the part at a given index. It's a utility, not a star, but it's the kind of node that quietly unblocks a workflow.
The inputs are input_string, delimiter (defaults to ,), and index (defaults to 0). It splits the string on every occurrence of the delimiter and returns the piece at index. Two outputs: part (the STRING you asked for) and count (how many pieces the split produced).
The two details that matter
First, indexing is zero-based. "a,b,c" with index 0 is a, index 1 is b, index 2 is c. That's standard Python, but it surprises people who count from one. Second, the returned part is stripped of surrounding whitespace - so "one, two, three" with index 1 gives two, not " two". Handy if you're splitting human-typed lists; mildly surprising if you were relying on exact whitespace.
Third - and this is the trap - if index is out of range (you ask for part 3 of a 2-piece split), the node returns an empty string rather than an error. That's why the count output exists: check index < count before trusting part. The pack ships InoCompareInt and switches for exactly this kind of gate.
What it's for
Parsing tag lists, extracting the extension or a field from a delimited filename, pulling one value out of a CSV-style string that flowed in from an API or a text file. It pairs naturally with InoStringLength or InoStringContains to validate what you got before using it.
Installing Ino Nodes
It ships with the Ino pack - one install gets everything. ComfyUI Manager: search "ComfyUI Ino Nodes", install, restart. Terminal:
cd ComfyUI/custom_nodes
git clone https://github.com/nobandegani/ComfyUI-InoNodes.git
cd comfyui_ino_nodes
pip install -r requirements.txt
Requires inopyutils in ComfyUI's Python environment; V3-schema pack, keep ComfyUI current. Nothing else to configure.
Where people get burned
Out-of-range indices returning "" instead of an error. It's safe-by-design, but it means a typo in index silently produces an empty string that flows downstream and fails somewhere confusing. If a part comes back empty, check the count output before you blame the node.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| input_string | STRING | — | |
| delimiter | STRING | , | — |
| index | INT | 00–999 | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| part | STRING | — |
| count | INT | — |