
Perl includes a number of "classic" string handling functions - things like
index to find one string in another and
substr to get a substring.
But you very rarely need to use them because the other string handling functions that are provided are so much more powerful!
Here's an example - firstly showing the Perl way to replace one string with another, then the "classic" method that might be used by someone who's familiar with C and perhaps hasn't been on our
Perl Course.
print "Where are you? ";
chop($place = <STDIN>);
$showem = "It is nice to be in HERE in June\n";
$showem =~ s/HERE/$place/;
print $showem;
$showem = "It is nice to be in HERE in June\n";
$pol = index($showem,"HERE");
$part1 = substr($showem,0,$pol);
$part2 = substr($showem,$pol+4);
$showem = $part1 . $place . $part2;
print $showem;
So that's 4 lines replaced by one and they have exactly the same effect:
Dorothy-2:de grahamellis$ perl altern
Where are you? Nuremberg
It is nice to be in Nuremberg in June
It is nice to be in Nuremberg in June
Dorothy-2:de grahamellis$
Oh - I tested the data using "Nuremberg" as my input, as that's where I am training this week. And it
is nice in Nuremberg, although I would love to have had someone here to share it with me ;-).
(written 2010-06-08)
Associated topics are indexed under
P205 - Perl - Initial String Handling [3770] Sample answers to training course exercises - available on our web site - (2012-06-21)
[3548] Dark mornings, dog update, and Python and Lua courses before Christmas - (2011-12-10)
[3547] Using Perl to generate multiple reports from a HUGE file, efficiently - (2011-12-09)
[3411] Single and double quotes strings in Perl - what is the difference? - (2011-08-30)
[3005] Lots of ways of doing it in Perl - printing out answers - (2010-10-19)
[2963] Removing the new line with chop or chomp in Perl - what is the difference? - (2010-09-21)
[2832] Are you learning Perl? Some more examples for you! - (2010-06-27)
[2816] Intelligent Matching in Perl - (2010-06-18)
[1860] Seven new intermediate Perl examples - (2008-10-30)
[1849] String matching in Perl with Regular Expressions - (2008-10-20)
[1608] Underlining in Perl and Python - the x and * operator in use - (2008-04-12)
[1195] Regular Express Primer - (2007-05-20)
[987] Ruby v Perl - interpollating variables - (2006-12-15)
[970] String duplication - x in Perl, * in Python and Ruby - (2006-12-07)
[324] The backtick operator in Python and Perl - (2005-05-25)
[254] x operator in Perl - (2005-03-22)
[31] Here documents - (2004-08-28)
55a2
Some other Articles
After the Perl course in NurnbergBinary data handling with unpack in PerlThe Merchants AndNuremberg - some picturesPerl - skip the classics and use regular expressionsSur la T.G.V.Sunday - waiting for the ferry.Simon saysThe Farming Industry pictured around MelkshamThey do weddings, we do courses.