parseNumber: Difference between revisions
Jump to navigation
Jump to search
mNo edit summary |
m (template:command argument fix) |
||
Line 9: | Line 9: | ||
| An SQF equivalent of C++ [http://www.cplusplus.com/reference/cstdlib/atof/ atof] function. Parses the string, interpreting its content as a floating point number. | | An SQF equivalent of C++ [http://www.cplusplus.com/reference/cstdlib/atof/ atof] function. Parses the string, interpreting its content as a floating point number. | ||
<br><br>The command first discards as many whitespace characters as necessary until the first non-whitespace character is found. Then, starting from this character, takes as many characters as possible that are valid following a syntax resembling that of [https://community.bistudio.com/wiki/Floating_Point_Number#Floating_Point_Literals floating point literals], and interprets them as a numerical value. The rest of the string after the last valid character is ignored and has no effect on the behavior of this command. | <br><br>The command first discards as many whitespace characters as necessary until the first non-whitespace character is found. Then, starting from this character, takes as many characters as possible that are valid following a syntax resembling that of [https://community.bistudio.com/wiki/Floating_Point_Number#Floating_Point_Literals floating point literals], and interprets them as a numerical value. The rest of the string after the last valid character is ignored and has no effect on the behavior of this command. | ||
<br><br>If the first sequence of non-whitespace characters in string does not form a valid floating-point number, or if no such sequence exists because either string is empty or contains only whitespace characters, no conversion is performed and the command returns 0. |= | <br><br>If the first sequence of non-whitespace characters in string does not form a valid floating-point number, or if no such sequence exists because either string is empty or contains only whitespace characters, no conversion is performed and the command returns 0. |DESCRIPTION= | ||
____________________________________________________________________________________________ | ____________________________________________________________________________________________ | ||
| '''parseNumber''' string |= | | '''parseNumber''' string |SYNTAX= | ||
|p1= string: [[String]] |= | |p1= string: [[String]] |PARAMETER1= | ||
| [[Number]] |= | | [[Number]] |RETURNVALUE= | ||
| s2= '''parseNumber''' boolean ''(Since Arma 3 v1.49.131731)''|= | | s2= '''parseNumber''' boolean ''(Since Arma 3 v1.49.131731)''|SYNTAX= | ||
|p21= boolean: [[Boolean]] |= | |p21= boolean: [[Boolean]] |PARAMETER1= | ||
| r2= [[Number]] - 0 if [[false]], 1 if [[true]]|= | | r2= [[Number]] - 0 if [[false]], 1 if [[true]]|RETURNVALUE= | ||
____________________________________________________________________________________________ | ____________________________________________________________________________________________ | ||
|x1= <code>_number = [[parseNumber]] "0.125"; //0.125</code> |= | |x1= <code>_number = [[parseNumber]] "0.125"; //0.125</code> |EXAMPLE1= | ||
|x2= <code>_number = [[parseNumber]] "2 abc"; //2</code> |= | |x2= <code>_number = [[parseNumber]] "2 abc"; //2</code> |EXAMPLE2= | ||
|x3= <code>_number = [[parseNumber]] [[true]]; //1</code> |= | |x3= <code>_number = [[parseNumber]] [[true]]; //1</code> |EXAMPLE3= | ||
____________________________________________________________________________________________ | ____________________________________________________________________________________________ | ||
| [[BIS_fnc_parseNumber]] |= | | [[BIS_fnc_parseNumber]] |SEEALSO= | ||
}} | }} |
Revision as of 14:44, 7 April 2019
Description
- Description:
- An SQF equivalent of C++ atof function. Parses the string, interpreting its content as a floating point number.
The command first discards as many whitespace characters as necessary until the first non-whitespace character is found. Then, starting from this character, takes as many characters as possible that are valid following a syntax resembling that of floating point literals, and interprets them as a numerical value. The rest of the string after the last valid character is ignored and has no effect on the behavior of this command.
If the first sequence of non-whitespace characters in string does not form a valid floating-point number, or if no such sequence exists because either string is empty or contains only whitespace characters, no conversion is performed and the command returns 0. - Groups:
- Uncategorised
Syntax
Alternative Syntax
- Syntax:
- parseNumber boolean (Since Arma 3 v1.49.131731)
- Parameters:
- boolean: Boolean
- Return Value:
- Number - 0 if false, 1 if true
Examples
- Example 1:
_number = parseNumber "0.125"; //0.125
- Example 2:
_number = parseNumber "2 abc"; //2
- Example 3:
_number = parseNumber true; //1
Additional Information
- See also:
- BIS_fnc_parseNumber
Notes
-
Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note
Notes
- Posted on Aug 28, 2014
- ffur2007slx2_5
- (A3 1.26)It only detects the first occurrence of a number in the string, return 0 by default.
parseNumber "2s4f"; // 2 parseNumber "s2f4"; // 0
parse config or code, currently BIS_fnc_parseNumber, occurrence is only limited with number, return -1 by default.{s3s4f} call BIS_fnc_parseNumber; // -1
Bottom Section