Click or drag to resize

AScanExact Function (Array, Usual, Usual, Usual)

X#
Scan an array until there is an exact match or a code block returns TRUE.

Namespace:  XSharp.RT
Assembly:  XSharp.RT (in XSharp.RT.dll) Version: 2.21
Syntax
 FUNCTION AScanExact(
	aTarget AS ARRAY,
	uSearch AS USUAL,
	 nStart AS USUAL,
	 nCount AS USUAL
) AS DWORD
Request Example View Source

Parameters

aTarget
Type: Array
The array to scan.
uSearch
Type: Usual
The value to scan for.
Unless this argument is a code block, it must match the data type of the elements in aTarget.
nStart
Type: Usual
The starting element.
A negative value starts from the end.
If nCount is positive, the default value is 1; if nCount is negative, the default value is the length of the array.
nCount
Type: Usual
The number of elements to process from nStart.
A negative value starts from the end.
The default is all elements to the end of the array.

Return Value

Type: DWord
If uSearch is a code block, AScanExact() returns the position of the element if the code block returned TRUE.
Otherwise, AScanExact() returns the position of the first exact-matching element.
AScanExact() returns 0 if no exact match is found.
Remarks
AScanExact() is the same as AScan() except that == is used for matching instead of =.
Examples
This example shows the difference between AScanExact() and AScan():
X#
1aArray := {"Larger", "Large"}
2? "Larger" = "Large"            // TRUE
3? "Larger" == "Large"            // FALSE
4? AScan(aArray, "Large")            // 1
5? AScanExact(aArray, "Large")        // 2
See Also