338 {
339 array<float> numbers = new array<float>();
340 int length = text.
Length();
341 int numberStart = -1;
342 int numberLen;
343
344 for (int i = 0; i < length; i++)
345 {
346 string letter = text.
Get(i);
347
348 if (numberStart == -1 &&
NUMERIC_LETTERS.Contains(letter) && letter !=
".")
349 numberStart = i;
350
351 if (numberStart != -1 && (!
NUMERIC_LETTERS.Contains(letter) || (letter ==
"-" && numberStart != i)))
352 {
353 numberLen = i - numberStart;
355 numberStart = -1;
356 }
357 else if (numberStart != -1 && (i + 1 == length))
358 {
359 numberLen = i - numberStart + 1;
361 numberStart = -1;
362 }
363 }
364
365 return numbers;
366 }
const string NUMERIC_LETTERS
proto native int Length()
Returns length of string.
proto string Get(int index)
Gets n-th character from string.
proto native float ToFloat()
Converts string to float.
proto string Substring(int start, int len)
Substring of 'str' from 'start' position 'len' number of characters.