Jump to content

Sky Slate Blueberry Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate
Photo

v1.0.45 released: Regular Expressions (RegEx)


  • Please log in to reply
19 replies to this topic
Chris
  • Administrators
  • 10727 posts
  • Last active:
  • Joined: 02 Mar 2004
NOTE: Although this release has been extensively tested and is not expected to break any existing scripts, several low-level performance enhancements were made. If you have any mission-critical scripts, it is recommended that you retest them and/or wait a few weeks for any bugs to get fixed.

Here are the changes for v1.0.45:

Added support for regular expressions via RegExMatch(), RegExReplace(), and SetTitleMatchMode RegEx. [thanks Philip Hazel & PhiLho]

Improved performance and memory utilization of StringReplace.

Improved performance of the := operator for expressions and functions involving long strings.

Improved ControlClick with a new option "NA" that avoids activating the target window (this mode also improves reliability in some cases). In addition, it's been documented that SetControlDelay -1 can improve the reliability of ControlClick in some cases. [thanks nnesori]

Changed GUI buttons to default to "no word-wrap" when no width, height, or CR/LF characters were specified. This may solve button display issues under some desktop themes.

Fixed "Transform HTML" for the following characters: &`n><

Fixed misinterpretation of lines starting with "if not is" such as "if not IsDone".

Fixed inability of "Gui Show" to move a window vertically downward to where its bottommost row of pixels is now.

Fixed inability to use GroupActivate as the only line beneath an IF or ELSE.

Fixed inability of the Input command to differentiate between end-keys enclosed in braces and their (un)shifted counterparts; e.g. '{' vs. '['. [thanks Laszlo]

--------

For anyone using the beta versions announced in the RegEx topic, it is recommended that you upgrade to 1.0.45 because there could be an input/output variable bug depending on the exact version you have.

PhiLho
  • Moderators
  • 6850 posts
  • Last active: Jan 02 2012 10:09 PM
  • Joined: 27 Dec 2005
Wow, the new option for SetTitleMatchMode comes as a (good) surprise!
Great release, much power added!
Thanks for the hard work.
Posted Image vPhiLho := RegExReplace("Philippe Lhoste", "^(\w{3})\w*\s+\b(\w{3})\w*$", "$1$2")

SKAN
  • Administrators
  • 9115 posts
  • Last active:
  • Joined: 26 Dec 2005
Many thanks for making the AutoHotkey language more powerful.
kWo4Lk1.png

Rabiator
  • Members
  • 292 posts
  • Last active: Aug 29 2016 09:29 PM
  • Joined: 17 Apr 2005
Well-wrought enhancements!
For me, they enlarge the application range of AutoHotkey enormously, thank you very much!

Ragnar
  • Members
  • 68 posts
  • Last active: Aug 26 2015 12:18 PM
  • Joined: 02 Oct 2006
really impressive ;)

jordis
  • Members
  • 81 posts
  • Last active: Aug 22 2014 01:56 PM
  • Joined: 30 Jul 2004
Wow! RegEx is a huge step for AHK! Congratulations!

bahri
  • Members
  • 120 posts
  • Last active: Feb 12 2016 07:08 PM
  • Joined: 24 Jun 2004
Thanks for this update.
I see long nights coming up trying out the new RegEx feature.

bahri

Rajat
  • Members
  • 1904 posts
  • Last active: Jul 17 2015 07:45 AM
  • Joined: 28 Mar 2004
great additions Chris! thanks! :)
...now to learn regex.

MIA

CleanNews.in : Bite sized latest news headlines from India with zero bloat


Stefan
  • Members
  • 74 posts
  • Last active: Apr 15 2009 09:33 PM
  • Joined: 30 Jul 2004
Hi Chris,
many thanks for supporting RegEx, that's great :shock: :D
Posted Image Stefan

This post was created with the kindly help of http://dict.leo.org/ and remember: “Allways look on the bright side of Life”

Chris
  • Administrators
  • 10727 posts
  • Last active:
  • Joined: 02 Mar 2004
Thanks for the enthusiam. It helps confirm that giving RegEx a high priority was the right choice (I'm never sure exactly what should be the highest priority, so I'm left with guessing).

Ace_NoOne
  • Members
  • 299 posts
  • Last active: May 02 2008 08:19 AM
  • Joined: 10 Oct 2005
RegEx support? In AHK? Chris, you're at least 48 days early for that...
Seriously tho, that's just great and will make a huge impact!

(It also comes as kind of a surprise to me, but that's probably because I've been pretty inactive lately. :( )

Demokos
  • Members
  • 105 posts
  • Last active: Jan 20 2011 06:28 PM
  • Joined: 28 Dec 2005
Thanks for this new version, Chris.
And, may be it isn't very important, but thanks for the new presentation of the help file...

slomz
  • Members
  • 601 posts
  • Last active: Mar 30 2008 12:54 AM
  • Joined: 03 Sep 2006
I just downloaded it, wow it is an easier file to read when I refer to the help file. I like the RegEx too, it helps. Great Work :D:D:D:D:D
Posted Image

Ace_NoOne
  • Members
  • 299 posts
  • Last active: May 02 2008 08:19 AM
  • Joined: 10 Oct 2005

may be it isn't very important, but thanks for the new presentation of the help file...

I just noticed the re-designed documentation; great job there too, Czar Chris!
And I'd disagree with Demokos in that I think a well-done documentation is very important. At least for me, the help is probably the most frequently used feature... ;)

Chris
  • Administrators
  • 10727 posts
  • Last active:
  • Joined: 02 Mar 2004
Thanks for the feedback on the documentation. John B. here on the forum helped me a lot with getting everything more consistent and better presented.

Here are the changes for v1.0.45.01:

Fixed FileReadLine and FileSelectFile not to crash or misbehave when other threads interrupt them (broken by 1.0.45). [thanks toralf]

Fixed RegExMatch() so that when there's no match, named subpatterns are properly set to "" in the output array. [thanks PhiLho]

Fixed RegExMatch()'s "J" option to properly write duplicate named subpatterns to the output array. [thanks PhiLho]

Changed SetWorkingDir and #Include DirName to succeed even for a root directory such as C: that lacks a backslash.

Improved DllCall() to display a warning dialog if the called function writes to a variable of zero capacity.