This template will allow manipulation or retrieve properties of an array list using a delimiter. It handles four functions: count, get, pos and math.

Usage

edit
{{Array|<Function>|<Array items>|<Delimiter>|<Property>|Parameters (optional)}}

5th parameter only valid with pos function when limiting multiple outputs to a single position.

Functions

edit
Count

Will count the total number of items in the array using the designated separator. Leading or trailing separators are not stripped.

  • {{Array|count|This is my array| }} → 4
  • {{Array|count|An,array,separated,by,commas|,}} → 5
  • {{Array|count|An,array,with,trailing,commas,|,}} → 6
Get

Will get the Nth item in the array, numeric value only. Can use negative value to work backwards. Last or -1 will get end item. Invalid value returns error.

  • {{Array|get|My,wiki,test,array|,|3}} → test
  • {{Array|get|A.list.of.dot.separated.items|.|2}} → list
  • {{Array|get|A sentence of typical words| |5}} → words
  • {{Array|get|The almost last item is nearly final| |-2}} → nearly
  • {{Array|get|The last item is final| |last}} → final
  • {{Array|get|Invalid input returns error| |foobar}} → void:invalid
Pos

Will retrieve the position in array of the search item. If duplicates are found, will output all positions delimited by comma. Output can be limited by specifying a 5th parameter.

{{Array|Pos|<Array items>|<Delimiter>|<Search Term>|<Nth occurrence> (optional)}}
  • {{Array|pos|A sentence of typical words| |sentence}} → 2
  • {{Array|pos|A.wiki.test.string.in.a.test.array|.|unmatched}} → void:nomatch
  • {{Array|pos|A.wiki.test.string.in.a.test.array|.|test}} → 3,7
  • {{Array|pos|Position,of,the,second,test,in,a,test,array|,|test|2}} → 8
  • {{Array|pos|2,4,6,6,7,11,12|,|7}} → 5
  • {{Array|pos|2,4,6,6,7,11,12|,|6|2}} → 4
Math

Will do calculations on the array items if all numeric. Options are sum (sum of all item numbers), min and max.

  • {{Array|math|2,4,6,6,7,12|,|sum}} → 37
  • {{Array|math|2,4,6,6,7,12|,|min}} → 2
  • {{Array|math|2,4,6,6,7,12|,|max}} → 12
  • {{Array|math|3.3.4.5.5.6|.|min}} → 3
  • {{Array|math|3.3.f.5.5.q|.|min}} → void:isalpha

See also

edit