"Your Name" says a box on a form on our web page, and visitors who want to sign up duely enter their name. Some of the names are shouted - "GRAHAM ELLIS" - and others are whispered - "graham ellis" when really we would like them all nice and consistent and in regular case - for we're publishing a list of people who have signed up to support a cause.
It's tempting to convert all of the names to lower case and then capitalise the first letter of each word, but that would upset the MacGreggors and daVincis of this world (and Peter Rabbit learned not to get on the wrong side of Mr MacGreggor, I recall).
So ... if the web site visitor uses both upper case and lower case in his name, we'll assume he's got it right. But if he shouts or whispers, we'll convert it as I was originally tempted to do.
Here's the code for that, in PHP.
if (ereg('[A-Z][a-z]',$row[name])) {
$names .= "$row[name]<br>";
} else {
$names .= ucwords(strtolower($row[name]))."<br>";
}
And if you want to see some output from that, have a look
here; to learn how to do it, have a look at our
PHP course pages.
(written 2008-04-06, updated 2008-04-13)
Associated topics are indexed under
H107 - String Handling in PHP [4072] Splitting the difference with PHP - (2013-04-27)
[4071] Setting up strings in PHP - (2013-04-27)
[3790] Solution looking for a problem? Lookahead and Lookbehind - (2012-06-30)
[3789] More than just matching with a regular expression in PHP - (2012-06-30)
[3788] Getting more than a yes / no answer from a regular expression pattern match - (2012-06-30)
[3534] Learning to program in PHP - Regular Expression and Associative Array examples - (2011-12-01)
[3516] Regular Expression modifiers in PHP - summary table - (2011-11-12)
[3515] PHP - moving from ereg to preg for regular expressions - (2011-11-11)
[3424] Divide 10000 by 17. Do you get 588.235294117647, 588.24 or 588? - Ruby and PHP - (2011-09-08)
[3020] Handling (expanding) tabs in PHP - (2010-10-29)
[2629] Curly braces within double quoted strings in PHP - (2010-02-09)
[2238] Handling nasty characters - Perl, PHP, Python, Tcl, Lua - (2009-06-14)
[2165] Making Regular Expressions easy to read and maintain - (2009-05-10)
[2046] Finding variations on a surname - (2009-02-17)
[1799] Regular Expressions in PHP - (2008-09-16)
[1613] Regular expression for 6 digits OR 25 digits - (2008-04-16)
[1533] Short and sweet and sticky - PHP form input - (2008-02-06)
[1372] A taster PHP expression ... - (2007-09-30)
[1336] Ignore case in Regular Expression - (2007-09-08)
[1195] Regular Express Primer - (2007-05-20)
[1058] PHP Regular expression to extrtact link and text - (2007-01-31)
[1008] Date conversion - PHP - (2006-12-26)
[728] Looking ahead and behind in a Regular Expression - (2006-05-22)
[716] Evaluating arithmetic expressions in configuration files - (2006-05-10)
[642] How similar are two words - (2006-03-11)
[608] Don't expose your regular expressions - (2006-02-15)
[589] Robust PHP user inputs - (2006-02-03)
[574] PHP - dividing a string up into pieces - (2006-01-23)
[560] The fencepost problem - (2006-01-10)
[558] Converting between acres and hectares - (2006-01-08)
[493] Running a Perl script within a PHP page - (2005-11-12)
[463] Splitting the difference - (2005-10-13)
[422] PHP Magic Quotes - (2005-08-22)
[337] the array returned by preg_match_all - (2005-06-06)
[54] PHP and natural sorting - (2004-09-19)
[31] Here documents - (2004-08-28)
22d4
Some other Articles
Learning to program in PerlSheep Shearers, Marathon Runners and Ocean SailorsLearning and understanding scripting programming techniquesM25 / South Mimms Service AreaDo not SHOUT and do not whisperAutomating processes through ExpectReplacing the last comma with an andCambidge - Tcl, Expect and Perl coursesFresher tutor, better courseEvery link has two ends - fixing 404s at the recipient