replaces the characters at positions m through n in "string" by "snew".


inserts copies of "snew" at several positions.


replaces characters at positions mi through ni in "string" by "snewi".


represents an operator form of StringReplacePart that can be applied to an expression.


  • StringReplacePart uses position specifications in the form returned by StringPosition. »
  • When a list of "snewi" is given, its length must be the same as the length of the list of positions. »
  • When multiple positions are given, all refer to the original "string", before any replacements have been done.
  • StringReplacePart[s,"",] can be used to delete substrings. »
  • StringReplacePart[new,part][old] is equivalent to StringReplacePart[old,new,part].
  • StringReplacePart[BioSequence["type","seq"],"snew",part] will apply the operation to the string "seq", yielding a BioSequence result.
  • Given a circular BioSequence and a starting position greater than the ending position, i.e. m>n, then StringReplacePart[bioseq,"snew",{m,n}] replaces the wrapped-around sequence starting at m and ending at n.


open allclose all

Basic Examples  (3)

Replace characters 2 through 5 with a new string:

Replace several sequences of characters with a new string:

Use the operator form of StringReplacePart:

Scope  (5)

Negative positions count from the end:

Replace two sequences of characters with two new strings:

Use the operator form to replace two sequences of characters with two new strings:

Replace a codon in a DNA sequence:

Undertake a wrap-around replace on a biomolecular sequence:

Applications  (1)

Simulating a multiway system [more info]:

The evolution of a multiway system:

Properties & Relations  (3)

StringReplacePart can use the output from StringPosition:

This is equivalent to StringReplace:

Replacing with an empty string is equivalent to StringDrop:

StringReplacePart can drop several sequences of characters at a time:

Use position {n,n-1} to insert at position n, without overwriting anything:

StringInsert can do the same:

Possible Issues  (1)

The position specifications are not allowed to overlap:

Wolfram Research (1996), StringReplacePart, Wolfram Language function, (updated 2020).


Wolfram Research (1996), StringReplacePart, Wolfram Language function, (updated 2020).


Wolfram Language. 1996. "StringReplacePart." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2020.


Wolfram Language. (1996). StringReplacePart. Wolfram Language & System Documentation Center. Retrieved from


@misc{reference.wolfram_2021_stringreplacepart, author="Wolfram Research", title="{StringReplacePart}", year="2020", howpublished="\url{}", note=[Accessed: 25-May-2022 ]}


@online{reference.wolfram_2021_stringreplacepart, organization={Wolfram Research}, title={StringReplacePart}, year={2020}, url={}, note=[Accessed: 25-May-2022 ]}