#include <StringConstants.au3> ; to declare the Constants of StringRegExp
#include <Array.au3> ; UDF needed for _ArrayDisplay and _ArrayConcatenate
Local $sRegex = "(?m)zweckfreibaum"
Local $sString = "//************* Russel **************" & @CRLF & _
"" & @CRLF & _
"//++++++++++++ App.jsx ++++++++++++++" & @CRLF & _
"" & @CRLF & _
"import React from "react";" & @CRLF & _
"import { DragonList } from "./DragonList";" & @CRLF & _
"import dragons from './dragons';" & @CRLF & _
"" & @CRLF & _
"export default function App() {7" & @CRLF & _
"" & @CRLF & _
" const [minAge, setMinAge] = React.useState(17);" & @CRLF & _
" const [type, setType] = React.useState('All');" & @CRLF & _
" console.log(dragons);" & @CRLF & _
" return (" & @CRLF & _
" <div>" & @CRLF & _
" <h1>The Dragons:</h1>" & @CRLF & _
" <DragonList dragons={dragons} minAge={minAge} type={type}/>" & @CRLF & _
" <span>Minimum Age: {minAge}</span>" & @CRLF & _
" <button type="button" onClick={ () => setMinAge(age => age - 1) }>" & @CRLF & _
" Show younger dragons" & @CRLF & _
" </button>" & @CRLF & _
" <button type="button" onClick={ () => setMinAge(age => age + 1) }>" & @CRLF & _
" Show older dragons" & @CRLF & _
" </button>" & @CRLF & _
" <button type="button" onClick={ () => setType('All') }>" & @CRLF & _
" Show all dragons" & @CRLF & _
" </button>" & @CRLF & _
" <button type="button" onClick={ () => setType('Fire') }>" & @CRLF & _
" Show fire dragons" & @CRLF & _
" </button>" & @CRLF & _
" </div>" & @CRLF & _
" )" & @CRLF & _
"}" & @CRLF & _
"" & @CRLF & _
"//++++++++++++++ Main.jsx ++++++++++++++++++" & @CRLF & _
"" & @CRLF & _
"import { StrictMode } from 'react'" & @CRLF & _
"import { createRoot } from 'react-dom/client'" & @CRLF & _
"import './index.css'" & @CRLF & _
"import GiggnGoggn from './App.jsx'" & @CRLF & _
"" & @CRLF & _
"createRoot(document.getElementById('root')).render(" & @CRLF & _
" <StrictMode>" & @CRLF & _
" <GiggnGoggn />" & @CRLF & _
" </StrictMode>," & @CRLF & _
")" & @CRLF & _
"" & @CRLF & _
"//++++++++++++++ dragon.js++++++++++++++" & @CRLF & _
"" & @CRLF & _
"export default dragons = [" & @CRLF & _
" {" & @CRLF & _
" name: "Skril"," & @CRLF & _
" type: "Lightning"," & @CRLF & _
" age: 16," & @CRLF & _
" }," & @CRLF & _
"" & @CRLF & _
" {" & @CRLF & _
" name: "Nightmare"," & @CRLF & _
" type: "Fire"," & @CRLF & _
" age: 22," & @CRLF & _
" }," & @CRLF & _
"" & @CRLF & _
" {" & @CRLF & _
" name: "Deadly Nadder"," & @CRLF & _
" type: "Magnesium"," & @CRLF & _
" age: 16," & @CRLF & _
" }," & @CRLF & _
"" & @CRLF & _
" {" & @CRLF & _
" name:"Night Fury"," & @CRLF & _
" type: "Plasma"," & @CRLF & _
" age: 18," & @CRLF & _
" }," & @CRLF & _
"" & @CRLF & _
"]; " & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"//++++++++++++++++++++++ DragonList.jsx+++++++++++++++++++" & @CRLF & _
"" & @CRLF & _
"import { Dragon } from "./Dragon";" & @CRLF & _
"" & @CRLF & _
"export function DragonList({dragons, minAge, type}) {" & @CRLF & _
"" & @CRLF & _
" const filteredDragons = dragons.filter(" & @CRLF & _
" dragon => (dragon.age >= minAge) && (type === 'All' ? true : dragon.type === type)" & @CRLF & _
" );" & @CRLF & _
"" & @CRLF & _
" console.log('filteredDragons', {filteredDragons});" & @CRLF & _
"" & @CRLF & _
" return (" & @CRLF & _
" <div>" & @CRLF & _
" {filteredDragons.map((dragon, index) => <Dragon key={index} {...dragon} /> )}" & @CRLF & _
" </div>" & @CRLF & _
" );" & @CRLF & _
"}" & @CRLF & _
"" & @CRLF & _
"//++++++++++++++++++ dragon.jsx +++++++++++++++++++++++++" & @CRLF & _
"" & @CRLF & _
"export function Dragon({ name, type, age }) {" & @CRLF & _
" return (" & @CRLF & _
" <div>" & @CRLF & _
" <h2>{name}</h2>" & @CRLF & _
" <p>Type: {type}</p>" & @CRLF & _
" <p>Age: {age} years</p>" & @CRLF & _
" </div>" & @CRLF & _
" );" & @CRLF & _
"}" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @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