Sign in to follow this  
Followers 0
MuffinMan

Title text match with spaces

2 posts in this topic

#1 ·  Posted (edited)

I am trying to rebuild an old single signon script that has been giving us a bit of trouble lately.  I didn't write it and it was written in another script language.  If the target program is already open it will have the current user's last name as part of the window text, which I am trying to compare against the user name to see if I should just WinActivate or Process Close and start the program over.  I will be provided the username like "jones", or "smith" and the title check works fine for last names (with no spaces), but if the last name DOES contains spaces, say "Nom De Plume", then all I will be given as a username is "nomdeplume".  Is there any way (via a regex maybe) that I can still check the text on the screen and somehow ?  I have been reading about the Advanced (4) mode of WinTitleMatchMode, but it is over my head.  Any help is appreciated.  Here is a small reproducer script:

Opt("WinTitleMatchMode", -1)

Run("Notepad")
WinWait("[CLASS:Notepad]", "", 10)
Send ("Smith" & @CRLF & "Jones" & @CRLF & "Nom De Plume" & @CRLF)

If WinExists("[CLASS:Notepad]", "jones") Then
    MsgBox(0,"FOUND","Found Jones")
EndIf

If WinExists("[CLASS:Notepad]", "nomdeplume") Then
    MsgBox(0,"FOUND","Found Nom De Plume")
EndIf

 

Edited by MuffinMan

Share this post


Link to post
Share on other sites



Well, I have something now that certainly seems to work, I'll start testing and see how this holds up; still interested if anyone has any better solutions.

Opt("WinTitleMatchMode", -1)

Run("Notepad")
WinWait("[CLASS:Notepad]", "", 10)
Send ("Smith" & @CRLF & "Jones" & @CRLF & "Nom De Plume" & @CRLF)

$WinText = StringStripWS(WinGetText("[CLASS:Notepad]"),8)

If StringInStr($WinText, "jones") <> 0 Then
    MsgBox(0,"FOUND","Found jones")
EndIf

If StringInStr($WinText, "nomdeplume") <> 0 Then
    MsgBox(0,"FOUND","Found Nom De Plume")
EndIf

 

Share this post


Link to post
Share on other sites

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
Sign in to follow this  
Followers 0

  • Similar Content

    • tezhihi
      By tezhihi
      I have a file (see attached file) with a string all line and this problem on here is I want to separate all $00:, $03:, $10:, $20:, $25:, $30:, $40:, $45:, $110:, $115:, $120: and $T. It's mean that each $ with value start a new line ( a new paragraph). I tried with Regular Expression in notepad++ ex:
      Find ($00:, $01:, $03: and so on) with regex (\$)([0-9]+): and replace is \r\n\1\2 (I think \r\n is @CRLF (not sure :() ) Find $T with regex (\$T)(.*?)(\$T) and replace is \1\2\r\n\3 When I try these regex to replace in notepad on StringRegexReplace the results is incorrect . I have read some example simple about regex. Please advise me how to do that with some example on autoit . The result will be in attached photo. Thanks 
      ahihi.txt

    • FroVN
      By FroVN
      Hi, i want read all text in website doc.google, link : https://docs.google.com/document/d/1ePaOK3w4mOi0fmOF7WQmF5kYvAXQtztVI7018wei_xs/edit (This is all my account , don't remember :v) how i read all text in this web? Tks
    • MyEarth
      By MyEarth
      Hello, i need to validate a string can be different things. I just need a True - False return value, no groups or things like that. It will be always one line at time to be processed by StringRegEx
      Valid:
      13:52|String
      02:52 XX|String
      13:52~SUN, MON, TUE, WED, THU, FRI, SAT|String
      02:52 XX~SUN, MON, FRI|String
      22/04/2017 13:52|String
      22/04/2017 02:52 YY|String
      Not Valid
      22/04/2017 13:52~Dom|String
      I need to validate until and inclusively the | after that i don't care
      The XX and YY value are two $sVariable from my script
      SUN, MON, TUE, WED, THU, FRI, SAT are fixed value, the can be mixed but always in the same order like
      SUN
      SUN, TUE, WED
      SUN, SAT 
      The time can be 12 or 24 hours, the date is always in the same format DD/MM/YYYY. If there is a date can't be a day after that ( see not valid )
      Well i think is all
      Sorry if i don't provide a working code, regex is too way complex.
      Thanks
    • StMaSi
      By StMaSi
      Two questions...
      When presenting a form containing a richedit control, is there any way to make the displayed text, within said richedit control, non-selectable?
      In addition, is there any way to hide the vertical line cursor, within said richedit control?
      Thanx.
    • StMaSi
      By StMaSi
      Is there any way to embed characters/codes/data/etc. within a text file so that when the script reads the text file to populate the edit box, said characters/codes/data/etc. can let the script know this word needs to be capitalized, that word needs to be underscored, etc.?
      For example, the text file would contain something along these lines...
      <bold>This is the title</bold> This is a <italic>sample</italic> text file. This is <underscore>only</underscore> a text file. Does that make sense?
      Thanx.