<?xml version="1.0" encoding="utf-8"?><!DOCTYPE article  PUBLIC '-//OASIS//DTD DocBook XML V4.4//EN'  'http://www.docbook.org/xml/4.4/docbookx.dtd'><article><articleinfo><title>SortingMemberList</title><revhistory><revision><revnumber>2</revnumber><date>2015-02-16 14:43:16</date><authorinitials>tech</authorinitials></revision><revision><revnumber>1</revnumber><date>2014-04-22 16:30:36</date><authorinitials>Inanna</authorinitials></revision></revhistory></articleinfo><para>This is an example of how to convert CSV output (&quot;members&quot; command in this case) to an array of objects. It also shows how you can process numeric/string/date fields differently and easily sort them. </para><screen><![CDATA[command "members"
execute "members = [ " + $result.replace(/^(".*?"),(".*?"),"(.*?)","(.*?)",(".*?"),"(.*?)","(.*?)".*?$/gm, "\{ lord:$1, position:$2,prestige:$3,honor:$4,lastlogin:date($5),cities:$6,population:$7 \}").split("\n").splice(1).join(",\n") + " ]"
]]><![CDATA[
top = members.sortOn("prestige", 18)[0]
echo "Highest prestige member is " + top.lord + ", prestige=" + FormatNumber(top.prestige)
]]><![CDATA[
last = members.sortOn("lastlogin", 18)[0]
echo "Most recent login is " + last.lord + ", login=" + last.lastlogin]]></screen><!--rule (<hr>) is not applicable to DocBook--><para> <ulink url="http://guide.neatportal.com/wiki/SortingMemberList/wiki/ScriptExamples#">ScriptExamples</ulink> </para></article>