Sitemap

Multiple String Search & Replace(SSR) in KDB+/q

2 min readMar 5, 2026

--

Press enter or click to view image in full size

When working with text data in q, it’s common to clean or normalize strings before processing them. The built-in ssr function is useful for search and replace, but many developers overlook how easily it can perform multiple replacements in one step.

Let’s walk through a simple example.

Sample Input

input:"Hi, Can u make to& cha-nge it"

Our string contains a few things we want to clean:

  • Remove &
  • Replace u with you
  • Remove -

Single Replacement with ssr

The ssr function performs a search-and-replace on a string.

ssr[input;"&";""]
"Hi, Can u make to cha-nge it"

Here:

  • "&" → the substring to find
  • "" → replace with nothing (effectively removing it)

Multiple Search & Replace Using Over(/)

Instead of running ssr multiple times manually, we can apply it iteratively using over (/).

ssr/[input;("u";"&";"-");("you";"";"")]
"Hi, Can you make to change it"

How It Works

Get Sathish Vadivel’s stories in your inbox

Join Medium for free to get updates from this writer.

The syntax:

ssr/[string; searchList; replaceList]

Where:

  • searchList → list of substrings to find
  • replaceList → corresponding replacements

The / operator applies ssr sequentially across the lists, passing the result of each replacement into the next step.

Step-by-Step Concept

Internally this behaves like:

step1:ssr[input;"u";"you"]
step2:ssr[step1;"&";""]
step3:ssr[step2;"-";""]

Result:

"Hi, Can you make to change it"

Using ssr/ keeps the code shorter and more expressive by replacing multiple lines of replacement logic with a single concise expression.

✔️Tip: If you often perform the same replacements, you can store the search and replace lists as variables and reuse them across scripts.

--

--

Sathish Vadivel
Sathish Vadivel

Written by Sathish Vadivel

Software Developer @ DXC Luxoft