Find strings between two string delimiters
#include <String.au3>
_StringBetween ( $sString, $sStart, $sEnd [, $iMode = $STR_ENDISSTART [, $bCase = False]] )
$sString | The string to search. |
$sStart | The beginning of the string to find. Passing an empty string starts at the beginning |
$sEnd | The end of the string to find. Passing an empty string searches from $sStart to end of string |
$iMode | [optional] Search mode when $sStart = $sEnd $STR_ENDISSTART (0) the $sEnd string at the end of a match starts the next possible match (default) $STR_ENDNOTSTART (1) a further instance of the $sStart starts the next match |
$bCase | [optional] False (default setting) = case-insensitive. True = case-sensitive. |
Success: | a 0-based array - element [0] contains the first found string. |
Failure: | sets the @error flag to non-zero. |
@error: | 1 - No strings found. |
#include <Array.au3>
#include <String.au3>
Example()
Func Example()
; Create an array of all the values between "[" and "]".
Local $aArray = _StringBetween("[18][20][3][5][500][60]", "[", "]")
; Display the results in _ArrayDisplay.
_ArrayDisplay($aArray, "Default Search")
; Create an array of all the values between "|" and "|" - note $sStart and $sEnd are identical
Local $sString = "-----|Both Modes|$STR_ENDISSTART only|Both Modes|-----"
; Mode $STR_ENDISSTART - default - $sEnd is next $sStart
$aArray = _StringBetween($sString, "|", "|")
; Display the results in _ArrayDisplay.
_ArrayDisplay($aArray, "$STR_ENDISSTART")
; Mode $STR_ENDNOTSTART - $sEnd is not next $sStart
$aArray = _StringBetween($sString, "|", "|", $STR_ENDNOTSTART)
; Display the results in _ArrayDisplay.
_ArrayDisplay($aArray, "$STR_ENDNOTSTART")
EndFunc ;==>Example