“Contains” really means substring matching
This is not an exact-value filter. Searching for active also matches inactive, because the text appears inside that cell. If the column is an enum-like status field where exact equality matters, review the resulting values before you use the output downstream.
Letter case is ignored
The comparison is case-insensitive, so Tokyo, TOKYO, and tokyo can all match the same search. Leading/trailing spaces and full-width/half-width variants are not normalized, though, so visually similar values can still behave differently.
An empty search is blocked
An empty string is technically contained in every string. That would make a “filtered” result silently keep every row, which is rarely what you intended. The tool therefore stops when the search text is blank instead of pretending that a filter was applied.
Other columns and row order stay intact
Only the selected column is used for the decision. Rows that match keep all their original cells, and their original order is preserved. That makes the result useful as a smaller CSV to pass to the next step without an accidental re-sort.
A practical example
Filter a support export on the status column for open, or a catalog on name for a brand keyword. If you get more rows than expected, substring matching is one of the first things to check.
If you want the deeper picture