Replace string

From Kolmafia
Revision as of 06:11, 21 November 2019 by imported>Fredg1
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Function Syntax

buffer replace_string(buffer original ,string find ,string replace )

buffer replace_string(string original ,string find ,string replace )

  • original is the starting string or buffer
  • find is the text to find in original
  • replace is the text to substitute for find

Searches through the supplied original text, replacing every instance of find with replace, and returns the result. The result being a buffer, if original is a string, you will need to store the result in a variable (buffer) manually, or you will have wasted your time. If it was a buffer, the change(s) will be directly applied (and saved) to original.

Code Sample

Replaces the center image of the Cyrpt (it's blank, don't worry) with some information regarding the noncombats of the zones.

void main()
{
   buffer results;
   results.append(visit_url());

   string cyrpt = "<font size=1>&lt;- Muscle &nbsp; &nbsp; Mys -&gt;<br />&lt;- Mox &nbsp; &nbsp; All -&gt;</font>";
   results.replace_string("<img src=\"http://images.kingdomofloathing.com/otherimages/cyrpt/cyrpt5.gif\">", cyrpt);
	
   results.write();
}

Special

Matches are made left-to-right, and once a portion of the supplied original is noted as a match, searching continues from the next character after said match.