User Tools

Site Tools


Regular_Expressions

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision Both sides next revision
Regular_Expressions [2018/04/09 00:06]
JMichaelTX ADD update to Capture Groups
Regular_Expressions [2018/07/08 20:29]
JMichaelTX Add section on ICU 55 Metacharacters
Line 53: Line 53:
  
 You can use Keyboard Maestro [[Tokens|Text Tokens]] anywhere appropriate in both the Search pattern and the Replace pattern. You can use Keyboard Maestro [[Tokens|Text Tokens]] anywhere appropriate in both the Search pattern and the Replace pattern.
 +
 +---
 +
 +===== ICU 55+ Metacharacters =====
 +
 +For the currently complete list, see [ICU Regular Expression Metacharacters](http://​userguide.icu-project.org/​strings/​regexp#​TOC-Regular-Expression-Metacharacters).
 +
 +**New Metacharacters Available in ICU 55+**(([ICU Regular Expression Metacharacters](http://​userguide.icu-project.org/​strings/​regexp#​TOC-Regular-Expression-Metacharacters)))
 +
 +[ICU 55](http://​site.icu-project.org/​download/​55) was released on 2015-04-01, and is available in the follow software versions:
 +  * macOS 10.11+ (El Capitan) except for JavaScript
 +  * Keyboard Maestro 8.0+ Native Actions [FIXME: ​ Need to confirm KM version]
 +
 +These Metacharacters offer some powerful solutions to long-standing RegEx problems. These can replace complicated RegEx patterns previously required, and are recommended for use if you are running the required versions. ​ For example, `\h` and `\R`.  ICU 55 is _not_ available in all RegEx engines. ​ A notable exception is JavaScript (and JXA), even in High Sierra. ​ So if you are using the native Keyboard Maestro Actions that use RegEx, it would be available, but not necessarily in Actions that use Execute Script in another language. ​ It is available in Execute AppleScript Actions that use ASObjC RegEx.
 +
 +[FIXME: ​ Need to confirm and complete Alternate Expressions]
 +
 +^ Character ^ Alternate Expression\\ (Pre ICU 55) ^ Description ^
 +| `\h` | `[^\S\r\n\f]` | Match a Horizontal White Space character.\\ They are characters with Unicode General Category of Space_Separator plus the ASCII tab (\u0009). |
 +| `\H` | TBD | Match a non-Horizontal White Space character. |
 +| `\k<​name>​` | TBD | Named Capture Back Reference. |
 +| `\R` | `(?:​\r?​\n|\r)` | Match a new line character, or the sequence CR LF.\\ The new line characters are \u000a, \u000b, \u000c, \u000d, \u0085, \u2028, \u2029 |
 +| `\v` | `[\n\r]` | Match a new line character.\\ The new line characters are \u000a, \u000b, \u000c, \u000d, \u0085, \u2028, \u2029.\\ Does not match the new line sequence CR LF. |
 +| `\V` | TBD | Match a non-new line character. |
 +
 +---
  
 ===== Examples ===== ===== Examples =====
Regular_Expressions.txt ยท Last modified: 2022/11/10 03:29 by ccstone