#include <StringConstants.au3> ; to declare the Constants of StringRegExp
#include <Array.au3> ; UDF needed for _ArrayDisplay and _ArrayConcatenate
Local $sRegex = "((?:(?# path without "" )(?<opening>(?# 'C:/', '//', '//./<UNC/C:>', '//?/<UNC/C:>' or '%VariableWindows%')(?<UNCPrefix>[\/\\][\/\\][?.][\/\\](?:UNC[\/\\])?)?(?<montage>\b[a-zA-Z]:[\/\\])|(?:(?:(?&UNCPrefix))|(?:[\/\\][\/\\](?!(?&montage))))|(?:%\w+%[\/\\]?))(?:(?# directory btw // )[^\/\\<>:"|?\n\r ][^\/\\<>:"|?\n\r]*(?<![ ])[\/\\])*(?:(?#we search for fileName only if next character is pathFriendly)(?=[^\/\\<>:"'|?\n\r;, ])(?:(?#name file ? dir ?)(?:[^\/\\<>:"|?\n\r;, .](?: (?=[\w\-]))?(?:\*(?!= ))?(?!(?&montage)))+)?(?:(?#extention)\.\w+)*))|(?:(?# path quoted "" or '' )["'](?&opening)(?=.*?["'])(?:[^\/\\<>:'"|?\n\r]+[\/\\]?)+?["']))"
Local $sString = "\\LOCALHOST\c$\temp\test-file.txt"" & @CRLF & _
"@"c:\temp\test-file.txt"," & @CRLF & _
"@"\\127.0.0.1\c$\temp\test-file.txt"," & @CRLF & _
"@"\\LOCALHOST\c$\ temp\test-file.txt"," & @CRLF & _
"@"\\.\c:\temp\test-file.txt"," & @CRLF & _
"@"\\?\c:\temp\est-file.txt"," & @CRLF & _
"@"\\.\UNC\LOCALHOST\c$\temp\test-file.txt"," & @CRLF & _
"@"\\127.0.0.1\c$\temp\test-file.txt"" & @CRLF & _
"" & @CRLF & _
"---------------------------" & @CRLF & _
"Tentative d'accès à C:\Users\tpgz4017\App - Data\Local\Temp\tempShapeFile_CrossWave Calibration Zones - Atoll CrossWave Model.shx après sa fin." & @CRLF & _
"---------------------------" & @CRLF & _
"" & @CRLF & _
"file:///C:/Users/Downloads/20220516_32289275_1049383.pdf" & @CRLF & _
"file://p-eco2.rd.fr/vol_H0037_01$/599/livraison/20220516_32289275_1049383.pdf" & @CRLF & _
" --> couper les path apres le '\ ', meme que on est arrivé au fichier" & @CRLF & _
"c:\temp\test-file.txt"," & @CRLF & _
"\\127.0.0.1\c$\temp\test-file.txt"," & @CRLF & _
"\\LOCALHOST\c$\ temp\test-file.txt"," & @CRLF & _
"\\LOCALHOST\c$ \temp\test-file.txt"," & @CRLF & _
"\\.\c:\temp\t\est-file.txt"," & @CRLF & _
"\\?\c:\temp\test-file.txt"," & @CRLF & _
"\\.\UNC\LOCALHOST\c$\temp\test-file.txt"," & @CRLF & _
"\\?\UNC\ServerName\ temp\test-file.txt"," & @CRLF & _
"\\127.0.0.1\c$\temp\test-file.txt"" & @CRLF & _
"\\?\server1\e:\utilities\\filecomparer\" & @CRLF & _
"" & @CRLF & _
"C:/test\gvk.hv/fgfjgjj bdsdfus(fg)" & @CRLF & _
"C:/test\gvkhv/../fgfjgjjb/yfigfi" & @CRLF & _
"C:/test\gvk.hv/fgfj.gjjb/uhloext C:/test\gvk.hv/fgfj.gjjb/uhloext.ds" & @CRLF & _
"C:/test\gvk.hv/fgfj.gjjb/uhloext C:/UNC/test\gvk.hv/fgfj.gjjb/uhloext.ds" & @CRLF & _
"Site0 / 3: - Warning . See log file 'C:\ProgramData\InfoVista\Planet 7.4\7.4\RPE\Log\Plugins\Universal_Model_masked\log_Universal_Model.txt' for details" & @CRLF & _
"C:/test\gvk.hv/fgfj.gjjb/uhloext.ds.yi : gf" & @CRLF & _
"\\b-renice\sauvegardes\B-HIER\GEO\Geo_NetAct_Atoll_Planet\UR_Est\Polygon\Haguenau\Building\Haguenau hgtfhyt "C:/te-st.html" "C:/te-st.html" gd"dhbcsk "C:/te/dsst.ikpo fdsf "C:\test" "C:// test.html" gd" & @CRLF & _
""//te s t/e, llo.html " & @CRLF & _
"C:/test\f/uhlo/. " & @CRLF & _
"C://te?st.html" & @CRLF & _
"b-renice\sauvegardes\B-HIER\GEO\Geo_NetAct_Atoll_Planet\UR_Est\Custom Data"" & @CRLF & _
"; dfsdf "\\b-renice\sauvegardes\B-HIER\GEO\Geo_NetAct_Atoll_Planet\UR_Est\Custom Data"" & @CRLF & _
"; dfsdf "\\" & @CRLF & _
"Haguenau_Building.tab : Data format of \\b-renice\sauvegardes\B-HIER\GEO\Geo_NetAct_Atoll_Planet\UR_Est\Polygon\Haguenau\Building\Haguenau Building.* C: is invalid" & @CRLF & _
"Haguenau_Building.tab : Data format of \\b-renice\sauvegardes\B-HIER\GEO\Geo NetAct Atoll_Planet\UR_Est\Polygon\Haguenau\Building\Haguenau Building.TAB, is invalid" & @CRLF & _
"Haguenau_Building.tab : Data format of \\b-renice\sauvegardes\B-HIER\GEO\Geo_NetAct_Atoll_Planet\UR_Est\Polygon\Haguenau\Building\Haguenau Buildi*.*ng.*, is invalid" & @CRLF & _
"C:/test/../hjgbkl C:/test/../hjgbkl.gfgdfgrdgfdgr C:/test/../hjgbkl" & @CRLF & _
"C:/test.html" & @CRLF & _
"C://test/ .h/hel,lo.html//test/./hello.html" & @CRLF & _
"C:/test//hello.html" & @CRLF & _
"//test" & @CRLF & _
"//hello.html" & @CRLF & _
"/test" & @CRLF & _
""%tmp%/fsdfs"" & @CRLF & _
"%tmp%/fsdfs" & @CRLF & _
"ERROR 8/31/2021 - 6:45:39 PM HighResClutter .RasterFile : \\b-ren ice\sauv egardes\B-HIER\GEO%dsq%\NewJersey_NewYork\DTM\DTM\CENTRAL_JERSE..Y_New_York_2 m_Z18N_0_DTM_02_06.bil : Le fichier spécifié est introuvable. " & @CRLF & _
"\\b-ren ice\sauv egardes\..\B-HIER\GEO\NewJersey_NewYork\DTM\DTM\CENTRAL_JERSE..Y_New_York_2 m_Z18N_0_DTM_02_06.bil C:\b-ren ice\sauv egardes\B-HIER\GEO\NewJersey_NewYork\DTM\DTM\CENTRAL_JERSE..Y_New_York_2 m_Z18N_0_DTM_02_06.bil \\b-ren ice\sauv egardes\B-HIER\GEO\NewJersey_NewYork\DTM\DTM\CENTRAL_JER SE.Y_New_York_2 m_Z18N_0_DTM_02_06.bil. " & @CRLF & _
"//test.html" & @CRLF & _
"\\10.1.1.107" & @CRLF & _
"//10.1.1.107/test.html" & @CRLF & _
"//10.1.1.107/te st/hello.html" & @CRLF & _
"//10.1.1.107/test/hello" & @CRLF & _
"//test/hello.txt" & @CRLF & _
"//test/hello.txt." & @CRLF & _
"/test/html" & @CRLF & _
"/tes?t/html" & @CRLF & _
"/test.html" & @CRLF & _
"test.html" & @CRLF & _
"//" & @CRLF & _
"/" & @CRLF & _
"\\\rged\bfg" & @CRLF & _
"\\" & @CRLF & _
"/t!esrtr" & @CRLF & _
"C:/hel**o" & @CRLF & _
"" & @CRLF & _
"\\.\UNC\Server\Share\Test\Foo.txt " & @CRLF & _
"\\?\UNC\Server\Share\Test\Foo.txt" & @CRLF & _
"" & @CRLF & _
"Pour les chemins UNC de périphérique, la partie serveur/partage forme le volume. Par exemple, dans \\?\server1\e:\utilities\\filecomparer\ , la partie serveur/partage est server1\utilities . Ceci est important quand" & @CRLF & _
""
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