<--- --------------------------------------------------------------------------------------- ---- Blog Entry: Using Methods in Javascript Replace Method Author: Ben Nadel / Kinky Solutions Link: http://www.bennadel.com/index.cfm?dax=blog:55.view Date Posted: May 15, 2006 at 8:14 AM ---- --------------------------------------------------------------------------------------- ---> // Turns the vowel characters into random cases. String.prototype.RandomCase = function(){ return( this.replace( new RegExp("([aeiou]{1})", "gi"), // Here, we are passing in a nameless function as the parameter for // the "replace" argument of the String Replace method. It uses the $1 // to refer to the grouping of vowels found in the regular expression. function($1){ // Get a random number. if (Math.random() > .5){ // Lowercase this one. return( $1.toLowerCase() ); } else { // Uppercase this one. return( $1.toUpperCase() ); } } ) ); } // Create a test string with plenty of vowels. var strTest = "Ben Nadel is a Pretty Nice Guy. I really like Kinky Solutions and his Coding Style."; // Alert the random-cased string. alert( strTest.RandomCase() );