Gsub replace backslash with forward slash

Hi,
I'm trying to replace a forward slash to back slash using gsub but can't get it to work.

I've tried

gsub => ["message", "/", "\\"]

and

gsub => ["message", "/", "\"]

The above fails with a parse error.

and

gsub => ["message", "[/]", "[\\]"]

does the wrong thing by adding the brackets in the substituted string.

Any pointers would be appreciated.

Thanks,
Sanjiv

Hi, you need a very tricky substitution :astonished: :grinning:

The only way of achieving it that comes to my mind is to use ruby code directly:

  ruby{
    code => ' event.set("message", event.get("message").gsub("/", "\\") ) '
  }

Be aware that if your output representation escapes special characters (for example Json), you'll see "doubled" backquotes in the result.

I add a link to a message with a related issue to have as reference and another unresolved one that might benefit from this.

That's exactly what I resorted to after many tries. I figured I was doing something wrong as replacing forward slash with backslash is a seemingly simple requirement.

Thanks!

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.