#include <StringConstants.au3> ; to declare the Constants of StringRegExp
#include <Array.au3> ; UDF needed for _ArrayDisplay and _ArrayConcatenate
Local $sRegex = "(?mds)^PING\b[^(]*\(([^)]*)\)\s([^.]*)\..*?^(\d+\sbytes).*?icmp_seq=(\d+).*?ttl=(\d+).*?time=(.*?ms).*?(\d+)\spackets\stransmitted.*?(\d+)\sreceived.*?(\d+%)\spacket\sloss.*?time\s(\d+ms).*?=\s([^\/]*)\/([^\/]*)\/([^\/]*)\/(.*?)\sms"
Local $sString = "PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data." & @CRLF & _
"64 bytes from 192.168.1.1: icmp_seq=1 ttl=64 time=1.50 ms" & @CRLF & _
"64 bytes from 192.168.1.1: icmp_seq=2 ttl=64 time=1.42 ms" & @CRLF & _
"64 bytes from 192.168.1.1: icmp_seq=3 ttl=64 time=51.2 ms" & @CRLF & _
"64 bytes from 192.168.1.1: icmp_seq=4 ttl=64 time=1.41 ms" & @CRLF & _
"64 bytes from 192.168.1.1: icmp_seq=5 ttl=64 time=1.39 ms" & @CRLF & _
"64 bytes from 192.168.1.1: icmp_seq=6 ttl=64 time=89.0 ms" & @CRLF & _
"64 bytes from 192.168.1.1: icmp_seq=7 ttl=64 time=1.90 ms" & @CRLF & _
"64 bytes from 192.168.1.1: icmp_seq=8 ttl=64 time=9.15 ms" & @CRLF & _
"64 bytes from 192.168.1.1: icmp_seq=9 ttl=64 time=1.37 ms" & @CRLF & _
"64 bytes from 192.168.1.1: icmp_seq=10 ttl=64 time=1.36 ms" & @CRLF & _
"" & @CRLF & _
"--- 192.168.1.1 ping statistics ---" & @CRLF & _
"10 packets transmitted, 10 received, 0% packet loss, time 1807ms" & @CRLF & _
"rtt min/avg/max/mdev = 1.360/15.966/88.970/28.436 ms, ipg/ewma 200.746/11.066 ms" & @CRLF & _
""
Local $aArray = StringRegExp($sString, $sRegex, $STR_REGEXPARRAYFULLMATCH)
; 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