Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

Multiple string.replace()

Name: Anonymous 2010-03-18 21:06

I'm trying to search and replace words in a long string in FIOC.


(pseudocode)
for i between 0 and 10:
  str = str.replace(words[i], replacements[i])


However, since strings are immutable, the string is copied each time and is slow. Since the length of the words are exactly the same as the replacements, I would like to edit the original string directly. Is that possible somehow?

Name: Anonymous 2010-03-18 22:05

I wrote some script like this a few months ago. It did a few MB/second, and had some 50 search/replace strings.

I've used CL-PPCRE, first I built the search queries with cl-ppcre:create-scanner which builds a compiled closure which searches for my regexp, and then mass-replaced with cl-ppcre:cl-ppcre:regex-replace-all. Performance was rather good and it solved my problem rather well.

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List