Maple Professional
Maple Academic
Maple Student Edition
Maple Personal Edition
Maple Player
Maple Player for iPad
MapleSim Professional
MapleSim Academic
Maple T.A. - Testing & Assessment
Maple T.A. MAA Placement Test Suite
Möbius - Online Courseware
Machine Design / Industrial Automation
Aerospace
Vehicle Engineering
Robotics
Power Industries
System Simulation and Analysis
Model development for HIL
Plant Modeling for Control Design
Robotics/Motion Control/Mechatronics
Other Application Areas
Mathematics Education
Engineering Education
High Schools & Two-Year Colleges
Testing & Assessment
Students
Financial Modeling
Operations Research
High Performance Computing
Physics
Live Webinars
Recorded Webinars
Upcoming Events
MaplePrimes
Maplesoft Blog
Maplesoft Membership
Maple Ambassador Program
MapleCloud
Technical Whitepapers
E-Mail Newsletters
Maple Books
Math Matters
Application Center
MapleSim Model Gallery
User Case Studies
Exploring Engineering Fundamentals
Teaching Concepts with Maple
Maplesoft Welcome Center
Teacher Resource Center
Student Help Center
StringTools[FormatMessage] - format a message string using %-interpolation
Calling Sequence
FormatMessage( fmt, param1, ..., param9 )
Parameters
fmt
-
string
param1, ..., param9
expressions
Description
The FormatMessage procedure is used to interpolate %-specifiers in format strings. These are used in exceptions and warning messages throughout Maple.
The FormatMessage(fmt, param1, param2, ...) function produces an output string from the format string fmt according to the following rule.
The string fmt is copied to the output and, whenever a '%' character followed by a decimal digit but not immediately preceded by another '%' character appears, it, and the adjacent digit, are replaced in the output by the result of converting the d-th parameter to a string. Here, d is the decimal value of the digit following the '%' character.
An exception to this rule is when the digit has the value . In this case, all of the remaining parameters are copied to the output as a (comma,space)-separated sequence. If the '%' character is followed immediately by a '-' character, which is, in turn, followed immediately by a non-zero decimal digit with decimal value d, then the d-th parameter paramd is taken to be a small non-negative integer. The number is copied to the output as an ordinal of the same value.
Up to nine parameters parami can appear after the format string fmt in the calling sequence.
The FormatMessage procedure also supports automated pluralization. If, instead of a digit, a '%' character is followed by an expression in braces of the form %{d|<0 value>|<1 value>|<plural value>}, then the d-th parameter, which must be a non-negative integer, is replaced conditionally by whichever of the value tokens matches in number. Specifically, if the d-th parameter is 0, then the <0 value> string is interpolated; if the d-th parameter is 1, then the <1 value> string is interpolated; and, if the d-th parameter is an integer greater than 1, then the <plural value> string is interpolated.
This function is part of the StringTools package, and so it can be used in the form FormatMessage(..) only after executing the command with(StringTools). However, it can always be accessed through the long form of the command by using the form StringTools[FormatMessage](..).
Note: For more sophisticated formatting capabilities, see sprintf.
Compatibility
The StringTools[FormatMessage] command was updated in Maple 15.
Examples
Error, (in StringTools:-FormatMessage) argument 1 after the format string must be a small integer
Error, invalid input: fopen expects its 1st argument, file, to be of type {string, symbol}, but received 2
See Also
exceptions, fopen, lastexception, sprintf, string, StringTools, WARNING
Download Help Document