Trying to compare Perl to a language that was actually designed to handle strings efficiently is just not going to work out that well.
I'm sorry but you simply have no idea what you are talking about if you think that Perl is surpassed for string manipulation by BASIC.
Perl has been text processing for the masses for over 20 years. The language was
created to process text efficiently, which necessitates efficient string handling at every level, from basic search/replace down to how strings are allocated. There is not a string-manipulation task you can think of that it can't already do in half a dozen different ways, most of which do not require anything beyond the language syntax itself (ie, you don't even need to invoke a function).
You need look no further than the fact that regular expressions are actually
built into the language and Perl Compatible Regular Expressions (PCRE) have become the yardstick by which most other regular expression processors are measured against. You can't have a bigger lust for string manipulation in a language than that.
Your cited example of reading substrings and inserting them elsewhere is laughably insignificant compared to the power and flexibility of PCRE alone. Without even using their most powerful constructs (I was using PHP's PCRE implementation), I got this site working in classic browsers with all the necessary rewriting of HTML, stripping of CSS etc. on the fly that this entailed. Not just a bit of search and replace, entire transformations where a CSS popup menu matched in one part of the document becomes an option select with javascript trigger in another just so that you can have some of the functionality of the main site in IBrowse. The entire proxy would simply have been incomprehensibly difficult to do without PCRE.
How easy would that be to do in BASIC with substr() calls, do you think?