How to Find and Replace Any Word (String) in Your Feed?.

Sometimes the product data in your store is not quite what a channel wants. Maybe your color attribute says Blk but Google expects Black, your titles carry a - Copy suffix, or a category name needs tidying. Editing every product by hand is slow and risky. CTX Feed’s String replace tool lets you find a piece of text and replace it (or delete it) across a whole attribute in the feed — no changes to your actual products, applied automatically each time the feed regenerates.

This feature requires CTX Feed Pro. String replace lives on the feed’s Filters tab and is unlocked by the Pro plugin. On the free version the section is visible as a locked preview.

What String replace does

String replace runs after your attributes are mapped and before the file is written. For each rule you define:

  • It looks at one attribute’s value (for example, the color or title you mapped on the Config tab).
  • It finds the text you specify — as plain text or a regular expression.
  • It swaps in your replacement text, or removes the found text entirely if you leave the replacement blank.

Because it operates on the feed output, your WooCommerce products are never touched — the change exists only in the generated file.

CTX Feed Make Feed Filters tab, where the String replace find-and-replace rules live
The String replace rules live on the feed’s Filters tab.

Add a find-and-replace rule

  1. Open your feed on CTX Feed → Make Feed (or edit an existing feed from Manage Feeds), and switch to the Filters tab.
  2. Scroll to the String replace section. Its subtitle reads “Find and replace inside an attribute value — exact text, or a regex pattern when the mode says so”.
  3. Click Add replacement (or Add one if the table is empty). A new row appears with five columns: Attribute, Find, Replace with, Mode, and Action.
  4. In Attribute, choose which value the rule applies to — for example, Product Title or one of your product attributes.
  5. In Find, type the text to look for — for example Blk.
  6. In Replace with, type the new text — for example Black. To simply delete the found text, leave this box empty.
  7. In Mode, keep Plain text for an exact match, or pick Pattern (regex) to use a regular expression.
  8. Repeat for as many rules as you need (use the + button on a row to add another below it). Rules run top to bottom, in order.
  9. Save and regenerate with Save & generate.

Plain text vs. regular expressions

The Mode column decides how the Find text is read:

  • Plain text (the default) — Blk → Black swaps the exact text wherever it appears in that attribute. Matching is case-sensitive.
  • Pattern (regex) — for pattern matching. Enter the pattern without the surrounding slashes; matching is multi-line and case-insensitive. For example, to strip a trailing - Copy from titles you could match \s*-\s*Copy$. To collapse repeated commas into one you could match ,{2,} and replace with ,.

Rules saved by older versions show the mode Legacy (auto), which guesses: text with a slash is replaced literally, anything else is tried as a pattern. Pick an explicit mode to be sure.

Common uses

  • Fix attribute values a channel rejects — Blk → Black, Sm → Small, pc → piece.
  • Clean up titles — remove - Copy, internal SKUs, or supplier tags that leaked into the product name.
  • Normalize separators — turn , into / in a comma-joined value, or squeeze double spaces.
  • Delete unwanted text — leave Replace with empty to strip a substring entirely.

Tips and troubleshooting

  • Nothing changed after I added a rule. Confirm you selected the correct Attribute, that the Find text matches exactly (including case for plain text), and that you regenerated the feed afterwards. The file only updates on a fresh generation.
  • My rule matched too much. Plain text replaces every occurrence in the value. Tighten the search — add surrounding characters, or switch the Mode to Pattern (regex) anchored to the exact spot (for example, $ to match only at the end).
  • A regex did nothing. Check the rule’s Mode is Pattern (regex), that you left off the surrounding slashes, and that the pattern is valid. An invalid pattern is replaced as plain text instead.
  • I want to change every product’s value, not just find-and-replace. For blanket text formatting (uppercase, trimming, truncating), use the Output options on the Config tab or the per-attribute command instead.
Try CTX Feed for WooCommerce - Free Download or Upgrade to Pro

2 thoughts on How to Find and Replace Any Word (String) in Your Feed?

  1. Hi,

    we have product categories that contain [shy] in the category name which outputs as ­ in the frontend and in the xml feed.
    This ­ needs to be removed from the feed output, but no matter what I try, it’s still there!

    Output example:

    subcategory ]]>

    Please provide help how I can solve this!

    Thanks
    Stefanie

Leave a comment.