So I have a string "SmartUserWantsToLive" I want to generate from it or any such string with capital letters strings like "Smart User Wants To Live". How do I do this?
+2
A:
var str1:String = 'SmartUserWantsToLive';
var str2:String = str1.replace( /([A-Z])/g, ' $1' );
// split first character when it was a space, to support strings like 'fooBar'
if ( str2.charAt( 0 ) == ' ' )
str2 = str2.substr( 1 );
trace( str2 ); // 'Smart user Wants To Live'
edit: Per comment
var str3:String = 'SomeUsefulAPIFooBar';
var str4:String = str3.replace( /((?<![A-Z])[A-Z]|[A-Z](?![A-Z]))/g, ' $1' );
if ( str4.charAt( 0 ) == ' ' )
str4 = str4.substr( 1 );
trace( str4 ); // 'Some Useful API Foo Bar'
poke
2010-03-20 00:40:07
Brilliant!) and hoew to for example keep word API frob braking apart?
Blender
2010-03-20 01:39:17
Updated my answer.
poke
2010-03-20 14:21:24