Splunk Cloud

Search Reference

Download manual as PDF

Download topic as PDF



Replaces field values with the values that you specify.

Replaces a single occurrence of the first string with another string in the specified fields. If you do not specify a one or more fields, the value is replaced in all fields.


replace (<wc-string> WITH <wc-string>)... [IN <field-list>]

Required arguments

Syntax: <string>
Description: Specify one or more field values and their replacements. You can use wildcard characters to match one or multiple terms.

Optional arguments

Syntax: <string> ...
Description: Specify a space delimited list of one or more field names for the field value replacements. Replacement values on _internal fields, require you to specify the field name with the IN <fieldname> clause.


Non-wildcard replacement values specified later take precedence over those replacements specified earlier. For a wildcard replacement, fuller matches take precedence over lesser matches. To assure precedence relationships, you are advised to split the replace into two separate invocations. When using wildcard replacements, the result must have the same number of wildcards, or none at all. Wildcards ( * ) can be used to specify many values to replace, or replace values with.


Example 1:

Change any host value that ends with "localhost" to simply "localhost".

... | replace *localhost WITH localhost IN host

Example 2:

Change the order of strings in host values so that "localhost" precedes the other strings.

... | replace "* localhost" WITH "localhost *" IN host

Example 3:

Change the value of two fields.

... | replace aug WITH August IN start_month end_month

Example 4:

Replace an IP address with a more descriptive name.

... | replace WITH localhost IN host

Example 5:

Replace values of a field with more descriptive names.

... | replace 0 WITH Critical, 1 WITH Error IN msg_level

Example 6:

Search for an error message and replace empty strings with a whitespace. Note: This example will not work unless you have values that are actually the empty string, which is not the same as not having a value.

"Error exporting to XYZ :" | rex "Error exporting to XYZ:(?.*)" | replace "" WITH " " IN errmsg

Example 7:

Replace values of an internal field, _time.

sourcetype=* | head 5 | eval _time="XYZ" | stats count BY _time | replace *XYZ* WITH *ALL* IN _time

See also

fillnull, rename


Have questions? Visit Splunk Answers and see what questions and answers the Splunk community has using the replace command.


This documentation applies to the following versions of Splunk Cloud: 6.5.0, 6.5.1, 6.5.1612, 6.6.0, 6.6.1, 6.6.3


If "fillnull" is in "See Also", then "filldown" should be, too. A global check in all "See Also" sections should be done to verify that any where that either exists, both exist.

September 9, 2017

The "rename" command should be in the "See Also" section. They are very similar: one changes the field "name", the other changes the field "value".

September 9, 2017

...|rex field=_raw "[a-z]\,\sMESSAGE=(?<ErrorMessage>[a-zA-Z.:_ \-0-9]{22,})"| stats count by ErrorMessage |replace XXX-XX-* With 000 in ErrorMessage

The above command does not seem to work with or without quotes where ErrorMessage is a string type field, any idea what is wrong??

July 30, 2015

Eric, please visit the Splunk IRC channel on EFNET or post a more detailed question to answers.splunk.com.

Rachel, Splunker
November 15, 2012

this command not working,what is wrong?

November 8, 2012

Was this documentation topic helpful?

Enter your email address, and someone from the documentation team will respond to you:

Please provide your comments here. Ask a question or make a suggestion.

You must be logged into splunk.com in order to post comments. Log in now.

Please try to keep this discussion focused on the content covered in this documentation topic. If you have a more general question about Splunk functionality or are experiencing a difficulty with Splunk, consider posting a question to Splunkbase Answers.

0 out of 1000 Characters