A String Replacement Overview is here.
Literal Replacement
Literal replacement works by using StringReplace to find a literal substring within a String and substitute another substring for it. Literal replacement is very simple and easy to use.string1="The quick brown fox jumped over the lazy white dog.";
StringReplace[string1,{"fox"->"mink","dog"->"pecadillo"}]
The quick brown mink jumped over the lazy white pecadillo.
Markers
Using markers to indicate the replacement position can improve code legibility. Use StringReplace to replace just the marked text.string2="The quick brown <animal1> jumped over the lazy white <animal2>.";
StringReplace[string2,{"<animal1>"->"mink","<animal2>"->"pecadillo"}]
The quick brown mink jumped over the lazy white pecadillo.
Delimiters
Use StringReplace to replace text between the delimiters. This is very useful when you want to replace a lot of text in a document, especially in a long document. However, the new function StringTemplate is a superior method overall.sitemapTemplate="<?xml version=\"1.0\" encoding=\"UTF-8\"?>
<urlset xmlns=\"http://www.sitemaps.org/schemas/sitemap/0.9\">
<!-- put list of urls here with a line feed after each one -->
</urlset>";
urls="<url><loc>http://www.blah.net/page1.html</loc></url>
<url><loc>http://www.blah.net/page2.html</loc></url>";
Note that you use StringExpression (shorthand "~~") to concatenate quoted Strings with Blanks in the String to be found by StringReplace, but you must use StringJoin (shorthand "<>") if you concatenate different Strings in the replacement String.
sitemapTemplateWithURLs=StringReplace[sitemapTemplate,"<!-- put list"~~urlsList__~~"each one -->"->urls]
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url><loc>http://www.blah.net/page1.html</loc></url>
<url><loc>http://www.blah.net/page2.html</loc></url>
</urlset>
No comments:
Post a Comment