# Multiway string substitution

**URL:** <https://discourse.julialang.org/t/multiway-string-substitution/102345>\
**Category:** General Usage\
**Tags:** strings, regex, algorithm\
**Created:** [August 1, 2023, 9:11am UTC](https://discourse.julialang.org/t/multiway-string-substitution/102345 "2023-08-01T09:11:40Z")\
**Posts on this page:** 1\
**Showing post:** 11

<div class="post-metadata">

**Author:** ![rocco\_sprmnt21](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/rocco_sprmnt21/32/20127_2.png) [@rocco\_sprmnt21](https://discourse.julialang.org/u/rocco_sprmnt21)\
**Post date:** [August 1, 2023, 8:54pm UTC](https://discourse.julialang.org/t/multiway-string-substitution/102345/11 "2023-08-01T20:54:28Z")

</div>

```julia
function multisbs(str,sstr, s)
    res=String[]
    fp=findfirst(str, s)
    while !isnothing(fp)
        push!(res,s[1:first(fp)-1]*sstr*s[last(fp)+1:end])
       #push!(res,s[1:fp.start-1]*sstr*s[fp.stop+1:end])
        fp=findnext(str, s,first(fp)+1)
    end
    res
end

julia> multisbs("BBA","A","BBABBA")
2-element Vector{String}:
 "ABBA"
 "BBAA"

julia> multisbs("BB","A","BBABBA")
2-element Vector{String}:
 "AABBA"
 "BBAAA"

julia> multisbs("BB","A","BBBBA")
3-element Vector{String}:
 "ABBA"
 "BABA"
 "BBAA"

julia> multisbs("BB","A","BBBBB")
4-element Vector{String}:
 "ABBB"
 "BABB"
 "BBAB"
 "BBBA"

```

---

_[View the full topic](https://discourse.julialang.org/t/multiway-string-substitution/102345)._
