import re
regex = re.compile(r"Zweckfreibaum", flags=re.MULTILINE)
test_str = ("//************* Russel **************\n\n"
"//++++++++++++ App.jsx ++++++++++++++\n\n"
"import React from \"react\";\n"
"import { DragonList } from \"./DragonList\";\n"
"import dragons from './dragons';\n\n"
"export default function App() {7\n\n"
" const [minAge, setMinAge] = React.useState(17);\n"
" const [type, setType] = React.useState('All');\n"
" console.log(dragons);\n"
" return (\n"
" <div>\n"
" <h1>The Dragons:</h1>\n"
" <DragonList dragons={dragons} minAge={minAge} type={type}/>\n"
" <span>Minimum Age: {minAge}</span>\n"
" <button type=\"button\" onClick={ () => setMinAge(age => age - 1) }>\n"
" Show younger dragons\n"
" </button>\n"
" <button type=\"button\" onClick={ () => setMinAge(age => age + 1) }>\n"
" Show older dragons\n"
" </button>\n"
" <button type=\"button\" onClick={ () => setType('All') }>\n"
" Show all dragons\n"
" </button>\n"
" <button type=\"button\" onClick={ () => setType('Fire') }>\n"
" Show fire dragons\n"
" </button>\n"
" </div>\n"
" )\n"
"}\n\n"
"//++++++++++++++ Main.jsx ++++++++++++++++++\n\n"
"import { StrictMode } from 'react'\n"
"import { createRoot } from 'react-dom/client'\n"
"import './index.css'\n"
"import GiggnGoggn from './App.jsx'\n\n"
"createRoot(document.getElementById('root')).render(\n"
" <StrictMode>\n"
" <GiggnGoggn />\n"
" </StrictMode>,\n"
")\n\n"
"//++++++++++++++ dragon.js++++++++++++++\n\n"
"export default dragons = [\n"
" {\n"
" name: \"Skril\",\n"
" type: \"Lightning\",\n"
" age: 16,\n"
" },\n\n"
" {\n"
" name: \"Nightmare\",\n"
" type: \"Fire\",\n"
" age: 22,\n"
" },\n\n"
" {\n"
" name: \"Deadly Nadder\",\n"
" type: \"Magnesium\",\n"
" age: 16,\n"
" },\n\n"
" {\n"
" name:\"Night Fury\",\n"
" type: \"Plasma\",\n"
" age: 18,\n"
" },\n\n"
"]; \n\n\n"
"//++++++++++++++++++++++ DragonList.jsx+++++++++++++++++++\n\n"
"import { Dragon } from \"./Dragon\";\n\n"
"export function DragonList({dragons, minAge, type}) {\n\n"
" const filteredDragons = dragons.filter(\n"
" dragon => (dragon.age >= minAge) && (type === 'All' ? true : dragon.type === type)\n"
" );\n\n"
" console.log('filteredDragons', {filteredDragons});\n\n"
" return (\n"
" <div>\n"
" {filteredDragons.map((dragon, index) => <Dragon key={index} {...dragon} /> )}\n"
" </div>\n"
" );\n"
"}\n\n"
"//++++++++++++++++++ dragon.jsx +++++++++++++++++++++++++\n\n"
"export function Dragon({ name, type, age }) {\n"
" return (\n"
" <div>\n"
" <h2>{name}</h2>\n"
" <p>Type: {type}</p>\n"
" <p>Age: {age} years</p>\n"
" </div>\n"
" );\n"
"}\n\n\n\n\n")
matches = regex.finditer(test_str)
for match_num, match in enumerate(matches, start=1):
print(f"Match {match_num} was found at {match.start()}-{match.end()}: {match.group()}")
for group_num, group in enumerate(match.groups(), start=1):
print(f"Group {group_num} found at {match.start(group_num)}-{match.end(group_num)}: {group}")
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 Python, please visit: https://docs.python.org/3/library/re.html