diff --git a/uebungen.ipynb b/uebungen.ipynb
index 08fb54c..643956f 100644
--- a/uebungen.ipynb
+++ b/uebungen.ipynb
@@ -1738,24 +1738,12 @@
"print(r)"
]
},
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": [
- "# Fügen Sie hier Ihren Code für \n",
- "\n",
- "some_str = ExtendedString('Das ist ein Test, oder etwa nicht?')\n",
- "print(some_str.multisplit(' ?,'))"
- ]
- },
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 9.3. [Aufgabe](#toc0_)\n",
- "Erstellen Sie eine Klasse `ExtendedString`, die die gleiche Funktionalität wie die originale `str`-Klasse anbietet, deren `split`-Funktion jedoch einen zusätzlichen Parameter `multi` anbietet. Wird `multi` nicht angegeben oder ist es auf `False` gesetzt, verhält sich `split` wie in der originalen `str`-Klasse. Ist `multi` jedoch auf `True` gesetzt, wird der jeweilige String an jedem Character des Separator-Strings geteilt. Das Argument `maxsplit` kann in diesem Fall der Einfachheit halber ignoriert werden.\n",
+ "Erstellen Sie eine Klasse `ExtendedString`, die die gleiche Funktionalität wie die originale `str`-Klasse anbietet. Wird `multi_split` jedoch aufgerufen, wird der jeweilige String an jedem Character des Separator-Strings geteilt.\n",
"\n",
"**Beispiel**\n",
"\n",
@@ -1765,7 +1753,7 @@
"
\n",
"`print(some_str.split(' ?,'))` gibt `['Das ist ein Test, oder etwa nicht?']` aus.\n",
"
\n",
- "`print(some_str.split(' ?,', multi=True))` gibt `['Das', 'ist', 'ein', 'Test', 'oder', 'etwa', 'nicht']` aus.\n",
+ "`print(some_str.multi_split(' ?,'))` gibt `['Das', 'ist', 'ein', 'Test', 'oder', 'etwa', 'nicht']` aus.\n",
""
]
},
@@ -1775,7 +1763,23 @@
"metadata": {},
"outputs": [],
"source": [
- "# Fügen Sie hier Ihren Code ein."
+ "# Fügen Sie hier Ihren Code ein.\n",
+ "class ExtendedString(str):\n",
+ " def multi_split(self, separators):\n",
+ " result = [self]\n",
+ " for sep in separators:\n",
+ " tmp = []\n",
+ " for elem in result:\n",
+ " tmp.extend(elem.split(sep))\n",
+ " result = [entry for entry in tmp if len(entry) > 0]\n",
+ " \n",
+ " return result\n",
+ " \n",
+ "\n",
+ "some_str = ExtendedString('Das ist ein Test, oder etwa nicht?')\n",
+ "print(some_str.split())\n",
+ "print(some_str.split(' ?,'))\n",
+ "print(some_str.multi_split(' ?,'))"
]
},
{