Jump to content

Recommended Posts

Posted (edited)

PincoPanco is right, it's a bug.

 

Now it only takes someone who loves the kudos brownie points, to report it properly.

 

Deffo a bug.

Not according to this ticket.

Edited by BrewManNH

If I posted any code, assume that code was written using the latest release version unless stated otherwise. Also, if it doesn't work on XP I can't help with that because I don't have access to XP, and I'm not going to.
Give a programmer the correct code and he can do his work for a day. Teach a programmer to debug and he can do his work for a lifetime - by Chirag Gude
How to ask questions the smart way!

I hereby grant any person the right to use any code I post, that I am the original author of, on the autoitscript.com forums, unless I've specifically stated otherwise in the code or the thread post. If you do use my code all I ask, as a courtesy, is to make note of where you got it from.

Back up and restore Windows user files _Array.au3 - Modified array functions that include support for 2D arrays.  -  ColorChooser - An add-on for SciTE that pops up a color dialog so you can select and paste a color code into a script.  -  Customizable Splashscreen GUI w/Progress Bar - Create a custom "splash screen" GUI with a progress bar and custom label.  -  _FileGetProperty - Retrieve the properties of a file  -  SciTE Toolbar - A toolbar demo for use with the SciTE editor  -  GUIRegisterMsg demo - Demo script to show how to use the Windows messages to interact with controls and your GUI.  -   Latin Square password generator

Posted (edited)

Not according to this ticket.

 

the problem described in that ticket is exactly the same of this one

.... I think that there is also a bug in the answer that was given to that tiket ..... :)

maybe it should be reopened by some good soul

Edited by PincoPanco

 

image.jpeg.9f1a974c98e9f77d824b358729b089b0.jpeg Chimp

small minds discuss people average minds discuss events great minds discuss ideas.... and use AutoIt....

Posted

The start parameter is where to start at which is perhaps quite obvious. The count parameter actually goes backwards instead of forwards if a negative number is used for the occurrence parameter. So it appears the start marks the end of the searched string when the start parameter is used with the occurrence parameter being negative.

If you have a string 10 characters long, set occurrence parameter to -1 and set start parameter to 7 then the search is the 1st 7 characters. If you set count to 3 then you are searching in the character range of 4 to 7.

Here is an example:

$string = '1234567890'
$start = 7
$count = 3

; 1234567890 -- Full string
;
; 1234567    -- 7 forward to start position
; ------>
;
; 1234567    -- 3 back as count being right to left due to -1 occurrence parameter
;     <--
;
; 567        -- search in this substring

For $1 = 1 To StringLen($string)
    $2 = StringInStr($string, $1, 0, -1, $start, $count)
    If $2 Then ConsoleWrite('Find: ' & $1 & ' Position: ' & $2 & ' SubString: ' & StringMid($string, 1 + $start - $count, $count) & @CRLF)
Next

Output:

Find: 5 Position: 5 SubString: 567
Find: 6 Position: 6 SubString: 567
Find: 7 Position: 7 SubString: 567

;)

Posted (edited)

The start parameter is where to start at which is perhaps quite obvious. The count parameter actually goes backwards instead of forwards if a negative number is used for the occurrence parameter. So it appears the start marks the end of the searched string when the start parameter is used with the occurrence parameter being negative.

If you have a string 10 characters long, set occurrence parameter to -1 and set start parameter to 7 then the search is the 1st 7 characters. If you set count to 3 then you are searching in the character range of 4 to 7.

Here is an example:

$string = '1234567890'
$start = 7
$count = 3

; 1234567890 -- Full string
;
; 1234567    -- 7 forward to start position
; ------>
;
; 1234567    -- 3 back as count being right to left due to -1 occurrence parameter
;     <--
;
; 567        -- search in this substring

For $1 = 1 To StringLen($string)
    $2 = StringInStr($string, $1, 0, -1, $start, $count)
    If $2 Then ConsoleWrite('Find: ' & $1 & ' Position: ' & $2 & ' SubString: ' & StringMid($string, 1 + $start - $count, $count) & @CRLF)
Next

Output:

Find: 5 Position: 5 SubString: 567
Find: 6 Position: 6 SubString: 567
Find: 7 Position: 7 SubString: 567

;)

 

the problem does not arise if you search only one character.

Try searching 2 characters and you will see that the first occurence found (45)  is out of searched  substring

$string = '1234567890'
$start = 7
$count = 3

; 1234567890 -- Full string
;
; 1234567    -- 7 forward to start position
; ------>
;
; 1234567    -- 3 back as count being right to left due to -1 occurrence parameter
;     <--
;
; 567        -- search in this substring

For $1 = 1 To StringLen($string)
    $3 = StringMid($string, $1, 2) ; <- search 2 char instead 1
    ConsoleWrite("searching " & $3 & ": ")
    $2 = StringInStr($string, $3, 0, -1, $start, $count)
    If $2 Then
        ConsoleWrite('Find: ' & $3 & ' Position: ' & $2 & ' SubString: ' & StringMid($string, 1 + $start - $count, $count) & @CRLF)
    Else
        ConsoleWrite('not Found ' & $3 & @CRLF); & ' Position: ' & $2 & ' SubString: ' & StringMid($string, 1 + $start - $count, $count) & @CRLF)
    EndIf
Next

searching 12: not Found 12

searching 23: not Found 23

searching 34: not Found 34

searching 45: Find: 45 Position: 4 SubString: 567  <- this is wrong

searching 56: Find: 56 Position: 5 SubString: 567

searching 67: Find: 67 Position: 6 SubString: 567

searching 78: not Found 78

searching 89: not Found 89

searching 90: not Found 90

searching 0: not Found 0

Edited by PincoPanco

 

image.jpeg.9f1a974c98e9f77d824b358729b089b0.jpeg Chimp

small minds discuss people average minds discuss events great minds discuss ideas.... and use AutoIt....

Posted
searching 45: Find: 45 Position: 4 SubString: 567  <- this is wrong

It does seem odd, just like the example in the ticket that appears to be a bug.

Posted

Officially, this is not a bug.

Here is the function _StringInStr, a work around for this interesting special feature.

Local $string = '1232323890'

ConsoleWrite(_StringInStr($string, "23", 0, -1, 8, 5) & ' characters in "' & $string & '"' & @LF) ; Returns 6
ConsoleWrite(_StringInStr($string, "23", 0, -1, 8, 2) & ' characters in "' & $string & '"' & @LF) ; Returns 0
ConsoleWrite(_StringInStr($string, "23", 0, -2, 8, 7) & ' characters in "' & $string & '"' & @LF) ; Returns 4
ConsoleWrite(_StringInStr($string, "23", 0, -2, 1, 6) & ' characters in "' & $string & '"' & @LF) ; Returns 0
ConsoleWrite(_StringInStr($string, "23", 0, 1) & ' characters in "' & $string & '"' & @LF)
ConsoleWrite(_StringInStr($string, "23", 0, 2) & ' characters in "' & $string & '"' & @LF)
ConsoleWrite(_StringInStr($string, "23", 0, 3) & ' characters in "' & $string & '"' & @LF)


; $iOccurrence - If "-1", finds 1st $sSubstring occurrence from $iStart right to left,
;                If "-2", finds 2nd $sSubstring occurrence from $iStart right to left, etc.
; $iStart - When $iOccurrence is negative and  $iStart = 1(default) then $iStart is at far right of string.
; $iCount - Limits the number of characters in $string to search for $sSubstring. The search starts from $iStart.
;           $iCount number of characters to the right from $iStart for positive $iOccurrence value: and,
;           $iCount number of characters to the left from $iStart for negative $iOccurrence value.
; Success - Returns the character position of the first character of $sSubstring from left to right in $string,
;           irrespective of sign (+/-) of $iOccurrence.  First character on left of $string is number #1.
Func _StringInStr($string, $sSubstring, $iCasesense = 0, $iOccurrence = 1, $iStart = 1, $iCount = 0)
    Local $iLen, $iRes, $sPartStr, $iRepeats
    If $iStart = 1 Then $iLen = StringLen($string)
    If $iStart > 1 Then $iLen = $iStart
    If $iCount = 0 Then $iCount = $iLen
    If $iOccurrence < 0 Then
        $sPartStr = StringMid($string, $iLen - $iCount + 1, $iCount)
        StringReplace($sPartStr, $sSubstring, "")
        $iRepeats = @extended
        If $iRepeats > 0 And Abs($iOccurrence) > 0 Then $iOccurrence = $iRepeats - Abs($iOccurrence) + 1
        ConsoleWrite('Reduced string to evalute =  "' & $sPartStr & '";' & @TAB & 'Search for "' & $sSubstring & '"   ') ; Comment out this line.
        $iRes = StringInStr($sPartStr, $sSubstring, $iCasesense, Abs($iOccurrence))
        If $iRes > 0 Then $iRes += ($iLen - $iCount)
        Return $iRes
    Else
        Return StringInStr($string, $sSubstring, $iCasesense, $iOccurrence, $iStart, $iCount)

    EndIf
EndFunc   ;==>_StringInStr

#cs Returns:-
Reduced string to evalute =  "23238";    Search for "23"   6 characters in "1232323890"
Reduced string to evalute =  "38";        Search for "23"   0 characters in "1232323890"
Reduced string to evalute =  "2323238";    Search for "23"   4 characters in "1232323890"
Reduced string to evalute =  "323890";    Search for "23"   0 characters in "1232323890"
2 characters in "1232323890"
4 characters in "1232323890"
6 characters in "1232323890"    
#ce
Posted

Yeah, I don't see how it's a bug if you specify the start parameter.

UDF List:

 
_AdapterConnections()_AlwaysRun()_AppMon()_AppMonEx()_ArrayFilter/_ArrayReduce_BinaryBin()_CheckMsgBox()_CmdLineRaw()_ContextMenu()_ConvertLHWebColor()/_ConvertSHWebColor()_DesktopDimensions()_DisplayPassword()_DotNet_Load()/_DotNet_Unload()_Fibonacci()_FileCompare()_FileCompareContents()_FileNameByHandle()_FilePrefix/SRE()_FindInFile()_GetBackgroundColor()/_SetBackgroundColor()_GetConrolID()_GetCtrlClass()_GetDirectoryFormat()_GetDriveMediaType()_GetFilename()/_GetFilenameExt()_GetHardwareID()_GetIP()_GetIP_Country()_GetOSLanguage()_GetSavedSource()_GetStringSize()_GetSystemPaths()_GetURLImage()_GIFImage()_GoogleWeather()_GUICtrlCreateGroup()_GUICtrlListBox_CreateArray()_GUICtrlListView_CreateArray()_GUICtrlListView_SaveCSV()_GUICtrlListView_SaveHTML()_GUICtrlListView_SaveTxt()_GUICtrlListView_SaveXML()_GUICtrlMenu_Recent()_GUICtrlMenu_SetItemImage()_GUICtrlTreeView_CreateArray()_GUIDisable()_GUIImageList_SetIconFromHandle()_GUIRegisterMsg()_GUISetIcon()_Icon_Clear()/_Icon_Set()_IdleTime()_InetGet()_InetGetGUI()_InetGetProgress()_IPDetails()_IsFileOlder()_IsGUID()_IsHex()_IsPalindrome()_IsRegKey()_IsStringRegExp()_IsSystemDrive()_IsUPX()_IsValidType()_IsWebColor()_Language()_Log()_MicrosoftInternetConnectivity()_MSDNDataType()_PathFull/GetRelative/Split()_PathSplitEx()_PrintFromArray()_ProgressSetMarquee()_ReDim()_RockPaperScissors()/_RockPaperScissorsLizardSpock()_ScrollingCredits_SelfDelete()_SelfRename()_SelfUpdate()_SendTo()_ShellAll()_ShellFile()_ShellFolder()_SingletonHWID()_SingletonPID()_Startup()_StringCompact()_StringIsValid()_StringRegExpMetaCharacters()_StringReplaceWholeWord()_StringStripChars()_Temperature()_TrialPeriod()_UKToUSDate()/_USToUKDate()_WinAPI_Create_CTL_CODE()_WinAPI_CreateGUID()_WMIDateStringToDate()/_DateToWMIDateString()Au3 script parsingAutoIt SearchAutoIt3 PortableAutoIt3WrapperToPragmaAutoItWinGetTitle()/AutoItWinSetTitle()CodingDirToHTML5FileInstallrFileReadLastChars()GeoIP databaseGUI - Only Close ButtonGUI ExamplesGUICtrlDeleteImage()GUICtrlGetBkColor()GUICtrlGetStyle()GUIEventsGUIGetBkColor()Int_Parse() & Int_TryParse()IsISBN()LockFile()Mapping CtrlIDsOOP in AutoItParseHeadersToSciTE()PasswordValidPasteBinPosts Per DayPreExpandProtect GlobalsQueue()Resource UpdateResourcesExSciTE JumpSettings INISHELLHOOKShunting-YardSignature CreatorStack()Stopwatch()StringAddLF()/StringStripLF()StringEOLToCRLF()VSCROLLWM_COPYDATAMore Examples...

Updated: 22/04/2018

Posted

To me it seems quite simple, if you have this string (example)

"qwert yuiop asdfg hjklz xcvbn"

And the count is 15 (to "d" by anyone's calculation), whichever way you search, "asdfg" should never be found.

But the OP demonstrated that it is found, so to me that's a bug.

AutoIt Absolute Beginners    Require a serial    Pause Script    Video Tutorials by Morthawt   ipify 

Monkey's are, like, natures humans.

  • Moderators
Posted

Hi,

I do not beleive this is a bug. Look at the following examples: :)

Local $sString = "Begin Begin Begin Text End End End"
;                 1234567890123456789012345678901234

$iCount = StringInStr($sString, " End", 0, -2)
; What we are searching
;                 Begin Begin Begin Text End End End
;                 1234567890123456789012345678901234
;                |<---------------------------------|
; The whole string from the right - and we find the second instance of "End"
ConsoleWrite(@TAB & "$iCount: " & $iCount & @CRLF)

$iCount = StringInStr($sString, " End", 0, -2, 18, 16)
; What we are searching
;                 Begin Begin Begin Text End End End
;                 1234567890123456789012345678901234
;                  |<---------------|
; Part of the string starting at character 18 and moving to the left for 16 characters
; And there are no instances of "End" within that section so the return is 0
ConsoleWrite(@TAB & "$iCount: " & $iCount & @CRLF)

$iCount = StringInStr($sString, " End", 0, -2, StringLen($sString), 16)
; What we are searching
;                 Begin Begin Begin Text End End End
;                 1234567890123456789012345678901234
;                                  |<---------------|
; Part of the string starting at the right and moving to the left for 16 characters
; and we again find the second instance of "End"
ConsoleWrite(@TAB & "$iCount: " & $iCount & @CRLF)
The confusion arises because the string length searched is in the direction of search, not always "left to right". ;)

M23

Public_Domain.png.2d871819fcb9957cf44f4514551a2935.png Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind

Open spoiler to see my UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

  • Moderators
Posted

Morning JohnOne,

Now that is interesting. :D

Here are my tests:

Local $sString = "Begin Begin Begin Text End End End"
;                 1234567890123456789012345678901234

; Counting from the left:
; ----------------------
$iCount = StringInStr($sString, "Begin ", 0, 2, 1, 6)
; Begin Begin Begin Text End End End
; 1234567890123456789012345678901234
;|----->| = Not found as expected
ConsoleWrite(@TAB & "$iCount: " & $iCount & @CRLF)

$iCount = StringInStr($sString, "Begin ", 0, 2, 1, 7)
; Begin Begin Begin Text End End End
; 1234567890123456789012345678901234
;|------>| - Not found as expected
ConsoleWrite(@TAB & "$iCount: " & $iCount & @CRLF)

$iCount = StringInStr($sString, "Begin ", 0, 2, 1, 8)
; Begin Begin Begin Text End End End
; 1234567890123456789012345678901234
; |------->| = Not found as expected
ConsoleWrite(@TAB & "$iCount: " & $iCount & @CRLF)

$iCount = StringInStr($sString, "Begin ", 0, 2, 1, 12)
; Begin Begin Begin Text End End End
; 1234567890123456789012345678901234
;|----------->| = Found as expected
ConsoleWrite(@TAB & "$iCount: " & $iCount & @CRLF)

; Counting from the right
; -----------------------
$iCount = StringInStr($sString, " End", 0, -2, StringLen($sString), 6)
; Begin Begin Begin Text End End End
; 1234567890123456789012345678901234
;                            |<-----| = Found NOT as expected
ConsoleWrite(@TAB & "$iCount: " & $iCount & @CRLF)

$iCount = StringInStr($sString, " End", 0, -2, StringLen($sString), 5)
; Begin Begin Begin Text End End End
; 1234567890123456789012345678901234
;                             |<----| = Found NOT as expected
ConsoleWrite(@TAB & "$iCount: " & $iCount & @CRLF)

$iCount = StringInStr($sString, " End", 0, -2, StringLen($sString), 4)
; Begin Begin Begin Text End End End
; 1234567890123456789012345678901234
;                              |<---| = Not found as expected
ConsoleWrite(@TAB & "$iCount: " & $iCount & @CRLF)
So there appears to be a significant difference between the 2 directions: searching from the left the whole substring needs to be in the searched string for it to be counted; searching from the right only part of the substring is needed for it to be counted. :wacko:

If not a bug it is most unexpected - I will play around a bit more this morning and see if I can come up with some logic to this behaviour. ;)

M23

Public_Domain.png.2d871819fcb9957cf44f4514551a2935.png Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind

Open spoiler to see my UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Posted (edited)

this "visual" explanation of the issue maybe can clarify what I mean

$String = "sunday Monday Tuesday Wednesday Thursday Friday Saturday"

ConsoleWrite(StringInStr($String, "Wednesday", 0, -1, 56, 28) & @CRLF)

                   (1)  ,      (2)    , (3) , (4) , (5), (6)

     StringInStr($String, "Wednesday" ,  0  ,  -1 , 56 , 28 )

(if) the above statement means:

 (1)    in this string "sunday Monday Tuesday Wednesday Thursday Friday Saturday"

 (2)    Search the word "Wednesday"

 (3)    not case sensitive, using the user's locale (default)

 (4)    find the first occurrence starting from right

 (5)    start the search from charcter 56 of the main string

 (6)    limit the search to 28 caracters (yellow part) <- ? is this correct ?

 

                   1         2         3         4         5     5
          12345678901234567890123456789012345678901234567890123456

          sunday Monday Tuesday Wednesday Thursday Friday Saturday

 

then why the word "Wednesday" is found if it is clearly (partially) out of the search zone??

maybe is not clear to me the parameter at point (6)

EDIT:

slow typing my side

posts #31 and #32 already clarified the meaning of the issue
anyway....
 

Edited by PincoPanco

 

image.jpeg.9f1a974c98e9f77d824b358729b089b0.jpeg Chimp

small minds discuss people average minds discuss events great minds discuss ideas.... and use AutoIt....

  • Moderators
Posted

PincoPanco,

You are not alone in your puzzlement - as I pointed out in the post above yours the function does appear to exhibit this strange behaviour where only part of the substring needs to be in the searched string when searching from the right end. Some more examples:

Local $sString = "aaa|aaa|aaa|bbb|bbb|bbb|ccc|ccc|ccc"
;                 12345678901234567890123456789012345

; Counting from the left:
; ----------------------
$iCount = StringInStr($sString, "aaa", 0, 2, 1, 4)
; aaa|aaa|aaa|bbb|bbb|bbb|ccc|ccc|ccc
; 12345678901234567890123456789012345
;|--->| = Not found as expected
ConsoleWrite(@TAB & "$iCount: " & $iCount & @CRLF)

$iCount = StringInStr($sString, "aaa", 0, 2, 1, 5)
; aaa|aaa|aaa|bbb|bbb|bbb|ccc|ccc|ccc
; 12345678901234567890123456789012345
;|---->| - Not found as expected
ConsoleWrite(@TAB & "$iCount: " & $iCount & @CRLF)

$iCount = StringInStr($sString, "aaa", 0, 2, 1, 7)
; aaa|aaa|aaa|bbb|bbb|bbb|ccc|ccc|ccc
; 12345678901234567890123456789012345
; |----->| = Found as expected
ConsoleWrite(@TAB & "$iCount: " & $iCount & @CRLF)

; Counting from the right
; -----------------------
$iCount = StringInStr($sString, "ccc", 0, -2, StringLen($sString), 7)
; aaa|aaa|aaa|bbb|bbb|bbb|ccc|ccc|ccc
; 12345678901234567890123456789012345
;                            |<------| = Found as expected
ConsoleWrite(@TAB & "$iCount: " & $iCount & @CRLF)

$iCount = StringInStr($sString, "ccc", 0, -2, StringLen($sString), 6)
; aaa|aaa|aaa|bbb|bbb|bbb|ccc|ccc|ccc
; 12345678901234567890123456789012345
;                             |<-----| = Found NOT as expected
ConsoleWrite(@TAB & "$iCount: " & $iCount & @CRLF)

$iCount = StringInStr($sString, "ccc", 0, -2, StringLen($sString), 5)
; aaa|aaa|aaa|bbb|bbb|bbb|ccc|ccc|ccc
; 12345678901234567890123456789012345
;                              |<----| = Found NOT as expected
ConsoleWrite(@TAB & "$iCount: " & $iCount & @CRLF)

$iCount = StringInStr($sString, "ccc", 0, -2, StringLen($sString), 4)
; aaa|aaa|aaa|bbb|bbb|bbb|ccc|ccc|ccc
; 12345678901234567890123456789012345
;                               |<---| = Not found as expected
ConsoleWrite(@TAB & "$iCount: " & $iCount & @CRLF)
So where I do not consider the original post as a bug, this does indeed seem to be one - or at the very least it must be mentioned in the Help file remarks. :(

M23

Public_Domain.png.2d871819fcb9957cf44f4514551a2935.png Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind

Open spoiler to see my UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Posted

PincoPanco,

You are not alone in your puzzlement -

.......

 

relief ..... :sweating:

... is from post> #9 that I'm trying to explain this :)

 

image.jpeg.9f1a974c98e9f77d824b358729b089b0.jpeg Chimp

small minds discuss people average minds discuss events great minds discuss ideas.... and use AutoIt....

Posted

Nice brainstorming you started, PincoPanco!

So, if I do summarize it right:

"Count" (and the substring I want to search in) is always evaluated from "Start" according to the direction of "Occurrence". (which is answer to my initial question)

If searching from right, strange things happen, because partially covered substrings are evaluated as found, too.

(nice job, PincoPanco!)

BR.

Civ.

I know that my code is ugly. But it works. Mostly.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...