There was a recent tweet — I believe it was a tweet, anyway — that indicated that a comment-based help synopsis, should only be as long as what’s allowable for a tweet. That’s 140 characters. With that in mind and a few minutes, I wrote this little function to check the character count in a string.
Function Measure-CharacterCount { [CmdletBinding()] Param ( [Parameter(Mandatory=$true)] [string]$String, [int]$CharacterCount = 140 ) $StringCount = $String.ToCharArray().Count If ($StringCount -le $CharacterCount) { Write-Verbose -Message "The string is equal to or less than $CharacterCount characters ($StringCount)." -Verbose } Else { Write-Warning -Message "The string is longer than $CharacterCount characters ($StringCount)." } }
In the example below, I’ve included two commands: one where the character count is less than 140 and one where it’s greater. On that note, let me add a third where the character count equals the default 140 character, and then 141, just to make sure this thing works…
PS > Measure-CharacterCount -String 'Today is awesome, maybe.' VERBOSE: The string is equal to or less than 140 characters (24). PS > PS > Measure-CharacterCount -String 'Today is awesome, maybe. Today is awesome, maybe. Today is awesome, maybe. Today is awesome, maybe. Today is awesome, maybe. Today is awesome, maybe.' WARNING: The string is longer than 140 characters (149). PS > PS > Measure-CharacterCount -String 'Today is awesome, maybe. Today is awesome, maybe. Today is awesome, maybe. Today is awesome, maybe. Today is awesome, maybe. Today is awesom' VERBOSE: The string is equal to or less than 140 characters (140). PS > PS > Measure-CharacterCount -String 'Today is awesome, maybe. Today is awesome, maybe. Today is awesome, maybe. Today is awesome, maybe. Today is awesome, maybe. Today is awesome' WARNING: The string is longer than 140 characters (141).