#include <StringConstants.au3> ; to declare the Constants of StringRegExp
#include <Array.au3> ; UDF needed for _ArrayDisplay and _ArrayConcatenate
Local $sRegex = "(?i)doi.+(10\.\d{4,6}\/[^\"'&<% \t\n\r\f\v]+)"
Local $sString = "The spontaneous emission rate of semiconductors displays a saturation at high carrier injection" & @CRLF & _
"densities due to the filling of the conduction and valence bands. We have carried out time-resolved" & @CRLF & _
"experiments, whereby a semiconductor quantum well at room temperature is excited optically by a" & @CRLF & _
"short laser pulse and the time decay of its luminescence is measured for different injected carrier" & @CRLF & _
"densities. The luminescence decay rate, plotted as a function of injected carrier density, deviates" & @CRLF & _
"strongly from the well-known quadratic recombination law, valid at low carrier densities, displaying" & @CRLF & _
"a saturation. We have developed a simple analytic theory that accounts for this saturation and can" & @CRLF & _
"describe adequately the recombination kinetics of highly excited semiconductor quantum wells." & @CRLF & _
"© 2002 American Institute of Physics.[DOI: 10.1063/1.1519344]"
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