parseSimpleArray: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - "\|s([0-9])\= '''([^' ]+)'''([^ ]+) " to "|s$1= $2$3 ")
m (Text replacement - "</br>" to "<br>")
Line 8: Line 8:
|gr2= Arrays
|gr2= Arrays


|descr= Converts given, formatted as simple array, [[String]] into a valid [[Array]]. Simple array is array consisting of [[Number]]s, [[String]]s, [[Boolean]]s and [[Array]]s of all of the above. For example: <tt>[1,"2",true,[4,"five",false]]</tt>. The string representation of this array compatible with [[parseSimpleArray]] will be <tt>"[1,""2"",true,[4,""five"",false]]"</tt> accordingly. This command is almost '''4x faster''' than similar uncached [[call]] [[compile]] method. And because [[call]] [[compile]] is not required, it is also '''more secure''' and primarily intended for use with [[callExtension]] to parse the [[String]] output into [[Array]].</br></br>
|descr= Converts given, formatted as simple array, [[String]] into a valid [[Array]]. Simple array is array consisting of [[Number]]s, [[String]]s, [[Boolean]]s and [[Array]]s of all of the above. For example: <tt>[1,"2",true,[4,"five",false]]</tt>. The string representation of this array compatible with [[parseSimpleArray]] will be <tt>"[1,""2"",true,[4,""five"",false]]"</tt> accordingly. This command is almost '''4x faster''' than similar uncached [[call]] [[compile]] method. And because [[call]] [[compile]] is not required, it is also '''more secure''' and primarily intended for use with [[callExtension]] to parse the [[String]] output into [[Array]].<br><br>
Since Arma 3 v1.96 the command will tolerate extra spaces and supports single quotes. The only recognised keywords (case '''in'''sensitive) are:
Since Arma 3 v1.96 the command will tolerate extra spaces and supports single quotes. The only recognised keywords (case '''in'''sensitive) are:
* <tt>true</tt> - translates into [[true]]
* <tt>true</tt> - translates into [[true]]

Revision as of 16:45, 6 July 2021

Hover & click on the images for description

Description

Description:
Converts given, formatted as simple array, String into a valid Array. Simple array is array consisting of Numbers, Strings, Booleans and Arrays of all of the above. For example: [1,"2",true,[4,"five",false]]. The string representation of this array compatible with parseSimpleArray will be "[1,""2"",true,[4,""five"",false]]" accordingly. This command is almost 4x faster than similar uncached call compile method. And because call compile is not required, it is also more secure and primarily intended for use with callExtension to parse the String output into Array.

Since Arma 3 v1.96 the command will tolerate extra spaces and supports single quotes. The only recognised keywords (case insensitive) are:
  • true - translates into true
  • false - translates into false
  • nil - translates into nil
  • null - translates into nil
  • <null> - translates into nil
  • any - translates into nil
Groups:
StringsArrays

Syntax

Syntax:
parseSimpleArray stringArray
Parameters:
stringArray: String - string formatted as simple array
Return Value:
Array - valid array

Examples

Example 1:
_arr = parseSimpleArray "[1,2,3]";
Example 2:
_bool = true; _num = 123.45; _str = "ok"; _arr = [1,false,"cool"]; _res = parseSimpleArray format ["[%1,%2,%3,%4]", _bool, _num, str _str, str _arr]; // Note how _bool and _num do not need str, however if used anyway, the result in this case would be identical hint str _res; // Returns [true,123.45,"ok",[1,false,"cool"]]

Additional Information

See also:
setresizepushBackpushBackUniqueselectapplyreversecountfindinforEachdeleteAtdeleteRangeappendsortarrayIntersectcallExtension

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