String (API)

From ComputerCraft Wiki
Revision as of 00:41, 7 December 2012 by 165.30.102.113 (Talk) (string.gmatch(string, pattern))

Jump to: navigation, search

The string API is a default Lua 5.1 API as defined here. Please list any non-working functions below.

Non-Working Functions

I relaly couldn't ask for more from this article.

string.sub / string.find

Both string.sub and string.find work on their own, but calling string.find on a string returned by string.sub will return the index of the character in the original string, not the sub string you are referencing.

Example:

local testString = "This is a sample string";
local testSubString = string.sub(testString,5);

local indexOfSample = string.find(testSubString,"sample");

indexOfSample is returned 11 instead of the expected 7

Concatenating a blank string onto the end of the string causes new memory to be allocated and works properly again

local testString = "This is a sample string";
local testSubString = string.sub(testString,5);

local indexOfSample = string.find(testSubString.."","sample");

This is also a problem with using string.find on command line arguments, as this returns the index in the full command path instead of the specific argument.