Regular Expressions 101

Save & Share

  • Regex Version: ver. 1
  • Update Regex
    ctrl+⇧+s
  • Save new Regex
    ctrl+s
  • Add to Community Library

Flavor

  • PCRE2 (PHP >=7.3)
  • PCRE (PHP <7.3)
  • ECMAScript (JavaScript)
  • Python
  • Golang
  • Java 8
  • .NET 7.0 (C#)
  • Rust
  • Regex Flavor Guide

Function

  • Match
  • Substitution
  • List
  • Unit Tests

Tools

Sponsors
There are currently no sponsors. Become a sponsor today!
An explanation of your regex will be automatically generated as you type.
Detailed match information will be displayed here automatically.
  • All Tokens
  • Common Tokens
  • General Tokens
  • Anchors
  • Meta Sequences
  • Quantifiers
  • Group Constructs
  • Character Classes
  • Flags/Modifiers
  • Substitution
  • A single character of: a, b or c
    [abc]
  • A character except: a, b or c
    [^abc]
  • A character in the range: a-z
    [a-z]
  • A character not in the range: a-z
    [^a-z]
  • A character in the range: a-z or A-Z
    [a-zA-Z]
  • Any single character
    .
  • Alternate - match either a or b
    a|b
  • Any whitespace character
    \s
  • Any non-whitespace character
    \S
  • Any digit
    \d
  • Any non-digit
    \D
  • Any word character
    \w
  • Any non-word character
    \W
  • Non-capturing group
    (?:...)
  • Capturing group
    (...)
  • Zero or one of a
    a?
  • Zero or more of a
    a*
  • One or more of a
    a+
  • Exactly 3 of a
    a{3}
  • 3 or more of a
    a{3,}
  • Between 3 and 6 of a
    a{3,6}
  • Start of string
    ^
  • End of string
    $
  • A word boundary
    \b
  • Non-word boundary
    \B

Regular Expression

/
/
g

Test String

Code Generator

Generated Code

#include <StringConstants.au3> ; to declare the Constants of StringRegExp #include <Array.au3> ; UDF needed for _ArrayDisplay and _ArrayConcatenate Local $sRegex = "(?m)^\h*#x?\h+\d+\N+[^#]+" Local $sString = "# SciTE settings for AutoIt v3" & @CRLF & _ "#" & @CRLF & _ "# Oct 25, 2015 - Jos" & @CRLF & _ "#" & @CRLF & _ "# *** Specify here your AutoIt Include directories ***" & @CRLF & _ "openpath.$(au3)=$(SciteDefaultHome)\..\include" & @CRLF & _ "openpath.beta.$(au3)=$(SciteDefaultHome)\..\beta\include" & @CRLF & _ "# *** Specify here the name you want to use of the UDF header creator ***" & @CRLF & _ "UDFCreator=Your Name" & @CRLF & _ "#" & @CRLF & _ "au3=*.au3" & @CRLF & _ "filter.au3=AutoIt (au3)|$(au3)|" & @CRLF & _ "lexer.$(au3)=au3" & @CRLF & _ "" & @CRLF & _ "# left for others but not in use anymore." & @CRLF & _ "autoit3dir=$(SciteDefaultHome)\.." & @CRLF & _ "" & @CRLF & _ "#define the number of backup files you want to keep 0=none" & @CRLF & _ "backup.files=0" & @CRLF & _ "" & @CRLF & _ "#define the activation of the ProperCase function using au3.api. 0=no change, 1=Propercase functions and keywords automatically" & @CRLF & _ "proper.case=0" & @CRLF & _ "" & @CRLF & _ "## Debug Output Options (to permanent change your selection copy them to SciTEUser.Properties and change it there" & @CRLF & _ "# Debug MessageBox Option 2="All" 1="No @extended" 0="No @extended & @error"." & @CRLF & _ "debug.msgbox.option=0" & @CRLF & _ "# Debug Console Option 3="All" 2="No SystemTime" 1="No SystemTime & Return" 0="No SystemTime, Return & Error"." & @CRLF & _ "debug.console.option=1" & @CRLF & _ "# Debug Trace Option 3="All" 2="No SystemTime" 1="No SystemTime & Return" 0="No SystemTime, Return & Error"." & @CRLF & _ "debug.trace.option=1" & @CRLF & _ "# extra propery used by AutoItAutoComplete.LUA to totally disable AutoComplete when set to 1" & @CRLF & _ "autocomplete.au3.disable=0" & @CRLF & _ "calltips.au3.disable=0" & @CRLF & _ "" & @CRLF & _ "# AutoIt Pixmap information" & @CRLF & _ "import properties\au3.pixmap" & @CRLF & _ "autoit.use.pixmaps=1" & @CRLF & _ "autoit.pixmap.function=$(autoit.pixmap.violet)" & @CRLF & _ "autoit.pixmap.variable=$(autoit.pixmap.gray)" & @CRLF & _ "autoit.pixmap.macro=$(autoit.pixmap.orange)" & @CRLF & _ "autoit.pixmap.keyword=$(autoit.pixmap.blue)" & @CRLF & _ "autoit.pixmap.library=$(autoit.pixmap.blue_library)" & @CRLF & _ "autoit.pixmap.preprocessor=$(autoit.pixmap.olive)" & @CRLF & _ "autoit.pixmap.special=$(autoit.pixmap.red_special)" & @CRLF & _ "" & @CRLF & _ "# CreateTools()" & @CRLF & _ "autoit.CreateToolsStart=19" & @CRLF & _ "shortcuts.properties=$(SciteDefaultHome)\shortcuts.properties" & @CRLF & _ "" & @CRLF & _ "# Commands to compile / run your script" & @CRLF & _ "command.go.$(au3)="$(SciteDefaultHome)\..\AutoIt3.exe" "$(SciteDefaultHome)\AutoIt3Wrapper\AutoIt3Wrapper.au3" /run /prod /ErrorStdOut /in "$(FilePath)" /UserParams $(1) $(2) $(3) $(4)" & @CRLF & _ "command.go.subsystem.$(au3)=1" & @CRLF & _ "command.compile.$(au3)="$(SciteDefaultHome)\..\AutoIt3.exe" "$(SciteDefaultHome)\AutoIt3Wrapper\AutoIt3Wrapper.au3" /ShowGui /prod /in "$(FilePath)"" & @CRLF & _ "command.compile.filter.$(au3)=1" & @CRLF & _ "command.build.$(au3)="$(SciteDefaultHome)\..\AutoIt3.exe" "$(SciteDefaultHome)\AutoIt3Wrapper\AutoIt3Wrapper.au3" /NoStatus /prod /in "$(FilePath)"" & @CRLF & _ "command.build.filter.$(au3)=1" & @CRLF & _ "# ----------------------------------------------------------------------------------------------------------------" & @CRLF & _ "# AutoitTools.lua will check if Beta is installed and use these te set the menu options" & @CRLF & _ "#x 00 Beta RUN" & @CRLF & _ "command.0.beta=Beta Run" & @CRLF & _ "command.0.$(au3)="$(SciteDefaultHome)\..\AutoIt3.exe" "$(SciteDefaultHome)\AutoIt3Wrapper\AutoIt3Wrapper.au3" /run /beta /ErrorStdOut /in "$(FilePath)" /UserParams $(1) $(2) $(3) $(4)" & @CRLF & _ "command.name.0.$(au3)=Beta Run" & @CRLF & _ "command.save.before.0.$(au3)=1" & @CRLF & _ "command.shortcut.0.$(au3)=Alt+F5" & @CRLF & _ "#x 01 Beta AUT2EXE" & @CRLF & _ "command.1.beta=Beta Compile" & @CRLF & _ "command.1.$(au3)="$(SciteDefaultHome)\..\AutoIt3.exe" "$(SciteDefaultHome)\AutoIt3Wrapper\AutoIt3Wrapper.au3" /NoStatus /beta /in "$(FilePath)"" & @CRLF & _ "command.name.1.$(au3)=Beta Compile" & @CRLF & _ "command.save.before.1.$(au3)=1" & @CRLF & _ "command.shortcut.1.$(au3)=Alt+F7" & @CRLF & _ "command.is.filter.1.$(au3)=1" & @CRLF & _ "#x 02 Beta Helpfile" & @CRLF & _ "command.2.beta=Beta Help" & @CRLF & _ "command.2.$(au3)=$(SciteDefaultHome)\..\beta\Autoit3Help.exe "$(CurrentWord)"" & @CRLF & _ "command.name.2.$(au3)=Beta Help" & @CRLF & _ "command.subsystem.2.$(au3)=2" & @CRLF & _ "command.shortcut.2.$(au3)=Alt+F1" & @CRLF & _ "command.save.before.2.$(au3)=2" & @CRLF & _ "" & @CRLF & _ "#x 03 Tylo's au3check program for Prod" & @CRLF & _ "command.3.$(au3)="$(SciteDefaultHome)\..\AutoIt3.exe" "$(SciteDefaultHome)\AutoIt3Wrapper\AutoIt3Wrapper.au3" /Prod /AU3check /in "$(FilePath)"" & @CRLF & _ "command.name.3.$(au3)=SyntaxCheck Prod" & @CRLF & _ "command.shortcut.3.$(au3)=Ctrl+F5" & @CRLF & _ "command.save.before.3.$(au3)=1" & @CRLF & _ "" & @CRLF & _ "#x 04 Tylo's au3check program for Beta" & @CRLF & _ "command.4.beta=SyntaxCheck Beta" & @CRLF & _ "command.4.$(au3)="$(SciteDefaultHome)\..\AutoIt3.exe" "$(SciteDefaultHome)\AutoIt3Wrapper\AutoIt3Wrapper.au3" /beta /AU3check /in "$(FilePath)"" & @CRLF & _ "command.name.4.$(au3)=SyntaxCheck Beta" & @CRLF & _ "command.shortcut.4.$(au3)=Ctrl+Alt+F5" & @CRLF & _ "command.save.before.4.$(au3)=1" & @CRLF & _ "# ----------------------------------------------------------------------------------------------------------------" & @CRLF & _ "# 05 Open Explorer in Scriptdir" & @CRLF & _ "command.5.*=Explorer.exe /e,/select,"$(FilePath)"" & @CRLF & _ "command.name.5.*=Open Explorer in ScriptDir" & @CRLF & _ "command.shortcut.5.*=Ctrl+E" & @CRLF & _ "command.subsystem.5.*=2" & @CRLF & _ "command.save.before.5.*=2" & @CRLF & _ "command.replace.selection.5.*=0" & @CRLF & _ "command.quiet.5.*=1" & @CRLF & _ "# 06 AU3Info program" & @CRLF & _ "command.6.$(au3)="$(SciteDefaultHome)\..\AutoIt3.exe" "$(SciteDefaultHome)\AutoIt3Wrapper\AutoIt3Wrapper.au3" /AU3info" & @CRLF & _ "command.name.6.$(au3)=AU3Info" & @CRLF & _ "command.shortcut.6.$(au3)=Ctrl+F6" & @CRLF & _ "command.subsystem.6.$(au3)=2" & @CRLF & _ "command.save.before.6.$(au3)=2" & @CRLF & _ "command.quiet.6.$(au3)=1" & @CRLF & _ "# 07 Test Run" & @CRLF & _ "command.7.$(au3)="$(SciteDefaultHome)\..\AutoIt3.exe" "$(SciteDefaultHome)\AutoIt3Wrapper\AutoIt3Wrapper.au3" /test /run /prod /ErrorStdOut /in "$(FilePath)" /UserParams $(1) $(2) $(3) $(4)" & @CRLF & _ "command.name.7.$(au3)=Test Run" & @CRLF & _ "command.shortcut.7.$(au3)=Shift+F5" & @CRLF & _ "command.save.before.7.$(au3)=1" & @CRLF & _ "# 08 Test AUT2EXE" & @CRLF & _ "command.8.$(au3)="$(SciteDefaultHome)\..\AutoIt3.exe" "$(SciteDefaultHome)\AutoIt3Wrapper\AutoIt3Wrapper.au3" /test /in "$(FilePath)"" & @CRLF & _ "command.name.8.$(au3)=Test Compile" & @CRLF & _ "command.shortcut.8.$(au3)=Shift+F7" & @CRLF & _ "command.save.before.8.$(au3)=1" & @CRLF & _ "# 09 Jos's Tidy formatting program for Autoit3" & @CRLF & _ "command.9.$(au3)="$(SciteDefaultHome)\..\AutoIt3.exe" "$(SciteDefaultHome)\AutoIt3Wrapper\AutoIt3Wrapper.au3" /Tidy /in "$(FilePath)"" & @CRLF & _ "command.name.9.$(au3)=Tidy AutoIt Source" & @CRLF & _ "command.subsystem.9.$(au3)=0" & @CRLF & _ "command.save.before.9.$(au3)=1" & @CRLF & _ "command.shortcut.9.$(au3)=Ctrl+T" & @CRLF & _ "#~ command.is.filter.9.$(au3)=1" & @CRLF & _ "# 10 Giuseppe's CodeWizard program" & @CRLF & _ "command.10.$(au3)="$(SciteDefaultHome)\..\AutoIt3.exe" "$(SciteDefaultHome)\CodeWizard\CodeWizard.au3" "/StdOut"" & @CRLF & _ "command.subsystem.10.$(au3)=1" & @CRLF & _ "command.name.10.$(au3)=CodeWizard" & @CRLF & _ "command.shortcut.10.$(au3)=Alt+W" & @CRLF & _ "command.save.before.10.$(au3)=2" & @CRLF & _ "command.replace.selection.10.$(au3)=1" & @CRLF & _ "command.quiet.10.$(au3)=1" & @CRLF & _ "# 12 lookfar's Koda FormDesigner" & @CRLF & _ "command.12.$(au3)="$(SciteDefaultHome)\Koda\FD.exe" /Scite" & @CRLF & _ "command.subsystem.12.$(au3)=1" & @CRLF & _ "command.name.12.$(au3)=Koda(FormDesigner)" & @CRLF & _ "command.shortcut.12.$(au3)=Alt+m" & @CRLF & _ "command.save.before.12.$(au3)=2" & @CRLF & _ "command.replace.selection.12.$(au3)=1" & @CRLF & _ "command.quiet.12.$(au3)=1" & @CRLF & _ "# 14 Jos's SciTeConfig" & @CRLF & _ "command.14.$(au3)="$(SciteDefaultHome)\..\AutoIt3.exe" "$(SciteDefaultHome)\SciteConfig\SciteConfig.au3"" & @CRLF & _ "command.name.14.$(au3)=SciTe Config" & @CRLF & _ "command.shortcut.14.$(au3)=Ctrl+1" & @CRLF & _ "command.subsystem.14.$(au3)=2" & @CRLF & _ "command.save.before.14.$(au3)=2" & @CRLF & _ "command.replace.selection.14.$(au3)=0" & @CRLF & _ "command.quiet.14.$(au3)=1" & @CRLF & _ "# 15 Update Source in Version repository" & @CRLF & _ "command.15.*="$(SciteDefaultHome)\..\AutoIt3.exe" "$(SciteDefaultHome)\AutoIt3Wrapper\AutoIt3Wrapper.au3" /in "$(FilePath)" /Versioning_Commit" & @CRLF & _ "command.name.15.*=Version Update Source" & @CRLF & _ "command.save.before.15.*=1" & @CRLF & _ "command.shortcut.15.*=F12" & @CRLF & _ "# 16 Compare current Source with the source in the Version repository" & @CRLF & _ "command.16.*="$(SciteDefaultHome)\..\AutoIt3.exe" "$(SciteDefaultHome)\AutoIt3Wrapper\AutoIt3Wrapper.au3" /in "$(FilePath)" /Versioning_ShowDiff" & @CRLF & _ "command.name.16.*=Version Diff Source" & @CRLF & _ "command.save.before.16.*=1" & @CRLF & _ "command.shortcut.16.*=Alt+F12" & @CRLF & _ "command.quiet.16.*=1" & @CRLF & _ "# 17 guinness SciTE Jump" & @CRLF & _ "command.17.$(au3)="$(SciteDefaultHome)\..\AutoIt3.exe" "$(SciteDefaultHome)\\SciTE Jump\SciTE Jump.au3"" & @CRLF & _ "command.name.17.$(au3)=SciTE Jump" & @CRLF & _ "command.shortcut.17.$(au3)=Alt+Q" & @CRLF & _ "command.subsystem.17.$(au3)=2" & @CRLF & _ "command.save.before.17.$(au3)=2" & @CRLF & _ "command.replace.selection.17.$(au3)=0" & @CRLF & _ "command.quiet.17.$(au3)=1" & @CRLF & _ "" & @CRLF & _ "# Standard LUA Functions" & @CRLF & _ "# 18 Jump to Func quickly" & @CRLF & _ "command.name.18.$(au3)=Jump to Function Prod" & @CRLF & _ "command.mode.18.$(au3)=subsystem:lua,savebefore:yes" & @CRLF & _ "command.shortcut.18.$(au3)=Ctrl+J" & @CRLF & _ "command.18.$(au3)=InvokeTool AutoItGotoDefinition.GotoDefinition" & @CRLF & _ "# 19 Jump Beta function quickly" & @CRLF & _ "command.19.beta=Jump to Function Beta" & @CRLF & _ "command.name.19.$(au3)=Jump to Function Beta" & @CRLF & _ "command.mode.19.$(au3)=subsystem:lua,savebefore:yes" & @CRLF & _ "command.shortcut.19.$(au3)=Ctrl+Alt+J" & @CRLF & _ "command.19.$(au3)=InvokeTool AutoItGotoDefinition.GotoDefinition beta" & @CRLF & _ "# 20 Jump Back to original spot" & @CRLF & _ "command.name.20.$(au3)=Jump Back" & @CRLF & _ "command.mode.20.$(au3)=subsystem:lua,savebefore:yes" & @CRLF & _ "command.shortcut.20.$(au3)=Ctrl+Shift+J" & @CRLF & _ "command.20.$(au3)=InvokeTool AutoItGotoDefinition.JumpBack" & @CRLF & _ "# 21 List functions" & @CRLF & _ "command.name.21.$(au3)=List Functions" & @CRLF & _ "command.21.$(au3)=InvokeTool AutoItTools.FunctionsList" & @CRLF & _ "command.subsystem.21.$(au3)=3" & @CRLF & _ "command.mode.21.$(au3)=savebefore:no" & @CRLF & _ "command.shortcut.21.$(au3)=Alt+L" & @CRLF & _ "# 22 Replacement toggle LUA script for MONOSPACE font" & @CRLF & _ "command.name.22.$(au3)=Toggle Override Font" & @CRLF & _ "command.mode.22.$(au3)=subsystem:lua,savebefore:no" & @CRLF & _ "command.shortcut.22.$(au3)=Ctrl+F11" & @CRLF & _ "command.22.$(au3)=InvokeTool Tools.toggleOverrideFont" & @CRLF & _ "# 23 Available" & @CRLF & _ "command.name.23.$(au3)=" & @CRLF & _ "command.subsystem.23.$(au3)=" & @CRLF & _ "command.23.$(au3)=" & @CRLF & _ "command.shortcut.23.$(au3)=" & @CRLF & _ "command.save.before.23.$(au3)=2" & @CRLF & _ "# 24 Add a msgbox for debugging" & @CRLF & _ "command.name.24.$(au3)=Debug to MsgBox" & @CRLF & _ "command.subsystem.24.$(au3)=3" & @CRLF & _ "command.24.$(au3)=InvokeTool AutoItTools.DebugMsgBoxAdd" & @CRLF & _ "command.shortcut.24.$(au3)=Ctrl+Shift+D" & @CRLF & _ "command.save.before.24.$(au3)=2" & @CRLF & _ "# 25 Add a Console msg for debugging" & @CRLF & _ "command.name.25.$(au3)=Debug to Console" & @CRLF & _ "command.subsystem.25.$(au3)=3" & @CRLF & _ "command.25.$(au3)=InvokeTool AutoItTools.DebugConsoleWriteAdd" & @CRLF & _ "command.shortcut.25.$(au3)=Alt+D" & @CRLF & _ "command.save.before.25.$(au3)=2" & @CRLF & _ "# 26 Remove Console and MSGBOX debug lines" & @CRLF & _ "command.name.26.$(au3)=Debug Remove lines" & @CRLF & _ "command.subsystem.26.$(au3)=3" & @CRLF & _ "command.26.$(au3)=InvokeTool AutoItTools.DebugRemove" & @CRLF & _ "command.shortcut.26.$(au3)=Ctrl+Alt+Z" & @CRLF & _ "command.save.before.26.$(au3)=2" & @CRLF & _ "# 27 Add ConsoleWrite Trace lines" & @CRLF & _ "command.name.27.$(au3)=Trace: Add Trace Lines" & @CRLF & _ "command.subsystem.27.$(au3)=3" & @CRLF & _ "command.27.$(au3)=InvokeTool AutoItTools.TraceAdd" & @CRLF & _ "command.shortcut.27.$(au3)=" & @CRLF & _ "command.save.before.27.$(au3)=2" & @CRLF & _ "# 28 Add ConsoleWrite Function Trace lines" & @CRLF & _ "command.name.28.$(au3)=Trace: Add Func Trace Lines" & @CRLF & _ "command.subsystem.28.$(au3)=3" & @CRLF & _ "command.28.$(au3)=InvokeTool AutoItTools.FunctionTraceAdd" & @CRLF & _ "command.shortcut.28.$(au3)=" & @CRLF & _ "command.save.before.28.$(au3)=2" & @CRLF & _ "# 29 Remove Trace Console lines" & @CRLF & _ "command.name.29.$(au3)=Trace: Remove ALL Trace lines" & @CRLF & _ "command.subsystem.29.$(au3)=3" & @CRLF & _ "command.29.$(au3)=InvokeTool AutoItTools.AllTraceRemove" & @CRLF & _ "command.shortcut.29.$(au3)=" & @CRLF & _ "command.save.before.29.$(au3)=2" & @CRLF & _ "# 30 Comment Console and MSGBOX debug lines" & @CRLF & _ "command.name.30.$(au3)=DebugTrace: Comment ALL lines" & @CRLF & _ "command.subsystem.30.$(au3)=3" & @CRLF & _ "command.30.$(au3)=InvokeTool AutoItTools.AllComment" & @CRLF & _ "command.shortcut.30.$(au3)=Alt+Shift+D" & @CRLF & _ "command.save.before.30.$(au3)=2" & @CRLF & _ "# 31 UnComment Console and MSGBOX debug lines" & @CRLF & _ "command.name.31.$(au3)=DebugTrace: UnComment ALL lines" & @CRLF & _ "command.subsystem.31.$(au3)=3" & @CRLF & _ "command.31.$(au3)=InvokeTool AutoItTools.AllUncomment" & @CRLF & _ "command.shortcut.31.$(au3)=Alt+Ctrl+D" & @CRLF & _ "command.save.before.31.$(au3)=2" & @CRLF & _ "# 32 Open #include File" & @CRLF & _ "command.name.32.$(au3)=Open Include" & @CRLF & _ "command.mode.32.$(au3)=subsystem:lua,savebefore:no" & @CRLF & _ "command.shortcut.32.$(au3)=Alt+I" & @CRLF & _ "command.32.$(au3)=InvokeTool AutoItTools.OpenInclude" & @CRLF & _ "# 33 Open BETA #include File" & @CRLF & _ "command.33.beta=Open Include Beta" & @CRLF & _ "command.name.33.$(au3)=Open Include Beta" & @CRLF & _ "command.mode.33.$(au3)=subsystem:lua,savebefore:no" & @CRLF & _ "command.shortcut.33.$(au3)=Alt+Shift+I" & @CRLF & _ "command.33.$(au3)=InvokeTool AutoItTools.OpenBetaInclude" & @CRLF & _ "# 34 Generate UDF header" & @CRLF & _ "command.name.34.$(au3)=Make UDF Header" & @CRLF & _ "command.mode.34.$(au3)=subsystem:lua,savebefore:no" & @CRLF & _ "command.shortcut.34.$(au3)=Ctrl+Alt+H" & @CRLF & _ "command.34.$(au3)=InvokeTool AutoItTools.InsertFunctionHeader" & @CRLF & _ "# Commands to for Help F1" & @CRLF & _ "command.help.$(au3)=$(SciteDefaultHome)\..\Autoit3Help.exe "$(CurrentWord)"" & @CRLF & _ "command.help.subsystem.$(au3)=2" & @CRLF & _ "# Autocomplete and call tip settings" & @CRLF & _ "api.$(au3)=$(SciteDefaultHome)\api\au3.api;$(SciteDefaultHome)\api\au3.autoit3wrapper.api;$(SciteUserHome)\au3.user.calltips.api" & @CRLF & _ "calltip.au3.word.characters=$(chars.alpha)$(chars.numeric)_." & @CRLF & _ "calltip.au3.ignorecase=1" & @CRLF & _ "calltip.au3.end.definition=)" & @CRLF & _ "calltip.au3.parameters.separators=," & @CRLF & _ "# set the style for separator character # Only available in SciTE4AutoIt3 version" & @CRLF & _ "calltip.au3.delimiter.style=8" & @CRLF & _ "# Display the calltip above the function # Only available in SciTE4AutoIt3 version" & @CRLF & _ "calltips.set.above=0" & @CRLF & _ "# Set the highlight color of the function argument # Only available in SciTE4AutoIt3 version" & @CRLF & _ "calltips.color.highlight=#FF0000" & @CRLF & _ "# Set the fore and back color of the calltip window" & @CRLF & _ "style.au3.38=fore:#050505,back:#FFFFFF" & @CRLF & _ "" & @CRLF & _ "#" & @CRLF & _ "autocomplete.au3.ignorecase=1" & @CRLF & _ "autocomplete.au3.start.characters=$(chars.alpha)$(chars.numeric)$_@#" & @CRLF & _ "word.characters.$(au3)=$(chars.alpha)$(chars.numeric)$(chars.accented).$_@#" & @CRLF & _ "# Auto indent stuff" & @CRLF & _ "#~ indent.size.$(au3)=4" & @CRLF & _ "statement.indent.$(au3)=" & @CRLF & _ "statement.end.$(au3)=" & @CRLF & _ "statement.lookback.$(au3)=" & @CRLF & _ "block.start.$(au3)=5 case if do for func else elseif while select switch with\" & @CRLF & _ " Case If Do For Func Else ElseIf While Select Switch With\" & @CRLF & _ " CASE IF DO FOR FUNC ELSE ELSEIF WHILE SELECT SWITCH WITH" & @CRLF & _ "block.end.$(au3)=5 case else endif elseif endfunc endselect endswitch next until wend endwith\" & @CRLF & _ " Case Else EndIf ElseIf EndFunc EndSelect EndSwitch Next Until Wend WEnd EndWith\" & @CRLF & _ " CASE ELSE ENDIF ELSEIF ENDFUNC ENDSELECT ENDSWITCH NEXT UNTIL WEND ENDWITH" & @CRLF & _ "#Comments functions definition" & @CRLF & _ "comment.block.au3=;~" & @CRLF & _ "comment.block.at.line.start.au3=1" & @CRLF & _ "comment.stream.start.au3=#CS" & @CRLF & _ "comment.stream.end.au3=#CE" & @CRLF & _ "comment.box.start.au3=#CS" & @CRLF & _ "comment.box.middle.au3=;" & @CRLF & _ "comment.box.end.au3= #CE" & @CRLF & _ "" & @CRLF & _ "# Import the seperate au3.keywords.properties file containing AutoIt3 info (based on script by Valik)" & @CRLF & _ "import properties\au3.keywords" & @CRLF & _ "import properties\autoit3wrapper.keywords" & @CRLF & _ "# Import the seperate au3.keywords.Abbreviations.properties file containing Abbreviation keywords supplied by Mhz" & @CRLF & _ "import properties\au3.keywords.abbreviations" & @CRLF & _ "#" & @CRLF & _ "# Add the below lines to your SciTEUser.properties when you want to add User Abbreviations and UDFS" & @CRLF & _ "#import au3.keywords.user.abbreviations" & @CRLF & _ "#import au3.UserUdfs" & @CRLF & _ "" & @CRLF & _ "# Autoit keywords" & @CRLF & _ "keywords.$(au3)=$(au3.keywords.keywords)" & @CRLF & _ "# Autoit functions" & @CRLF & _ "keywords2.$(au3)=$(au3.keywords.functions)" & @CRLF & _ "# Autoit macros" & @CRLF & _ "keywords3.$(au3)=$(au3.keywords.macros)" & @CRLF & _ "# Autoit Send Keys" & @CRLF & _ "keywords4.$(au3)=$(au3.keywords.sendkeys)" & @CRLF & _ "#Pre-Processor" & @CRLF & _ "keywords5.$(au3)=$(au3.keywords.preprocessor)" & @CRLF & _ "#Special" & @CRLF & _ "keywords6.$(au3)=$(au3.keywords.special) $(autoit3wrapper.keywords.special)" & @CRLF & _ "# Expand abbreviations" & @CRLF & _ "keywords7.$(au3)=$(au3.keywords.abbrev) $(au3.keywords.userabbrev)" & @CRLF & _ "# UDFS" & @CRLF & _ "keywords8.$(au3)=$(au3.keywords.udfs)" & @CRLF & _ "# UDFS User" & @CRLF & _ "keywords9.$(au3)=$(au3.keywords.user.udfs)" & @CRLF & _ "" & @CRLF & _ "#Color Settings" & @CRLF & _ "#Background" & @CRLF & _ "style.au3.32=style.*.32=$(font.base),back:#F0F4F9" & @CRLF & _ "#CaretLineBackground" & @CRLF & _ "caret.line.back=#FFFED8" & @CRLF & _ "# Brace highlight" & @CRLF & _ "style.au3.34=fore:#0000FF,back:#F0F4F9" & @CRLF & _ "# Brace incomplete highlight" & @CRLF & _ "style.au3.35=fore:#009933,back:#F0F4F9" & @CRLF & _ "# White space" & @CRLF & _ "style.au3.0=fore:#000000" & @CRLF & _ "# Comment line" & @CRLF & _ "style.au3.1=fore:#008000,italics" & @CRLF & _ "# Comment block" & @CRLF & _ "style.au3.2=fore:#008000,italics" & @CRLF & _ "# Number" & @CRLF & _ "style.au3.3=fore:#0000FF" & @CRLF & _ "# Function" & @CRLF & _ "style.au3.4=fore:#000090" & @CRLF & _ "# Keyword" & @CRLF & _ "style.au3.5=fore:#0000FF" & @CRLF & _ "# Macro" & @CRLF & _ "style.au3.6=fore:#808000" & @CRLF & _ "# String" & @CRLF & _ "style.au3.7=fore:#FF0000" & @CRLF & _ "# Operator" & @CRLF & _ "style.au3.8=fore:#FF8000" & @CRLF & _ "# Variable" & @CRLF & _ "style.au3.9=fore:#5A5A5A" & @CRLF & _ "# Send keys in string" & @CRLF & _ "style.au3.10=fore:#808080" & @CRLF & _ "# Pre-Processor" & @CRLF & _ "style.au3.11=fore:#808000" & @CRLF & _ "# Special" & @CRLF & _ "style.au3.12=fore:#DC143C" & @CRLF & _ "#Abbrev-Expand" & @CRLF & _ "style.au3.13=fore:#FF0000" & @CRLF & _ "# COM Objects" & @CRLF & _ "style.au3.14=fore:#993399" & @CRLF & _ "#Standard UDF's" & @CRLF & _ "style.au3.15=fore:#0080FF" & @CRLF & _ "#User UDF's" & @CRLF & _ "style.au3.16=$(style.au3.15)" Local $aArray = StringRegExp($sString, $sRegex, $STR_REGEXPARRAYGLOBALFULLMATCH) Local $aFullArray[0] For $i = 0 To UBound($aArray) -1 _ArrayConcatenate($aFullArray, $aArray[$i]) Next $aArray = $aFullArray ; Present the entire match result _ArrayDisplay($aArray, "Result")

Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for AutoIt, please visit: https://www.autoitscript.com/autoit3/docs/functions/StringRegExp.htm