I have some text
Trotzdem gibt es Untersuchungen, die nahelegen, dass bis zu 20% der Studierenden in Deutschland während der Prüfungsvorbereitung Ritalin einschmeissen [2], Reportagen, dass britische Studierende Modafinil bestens kennen[3] und Studierende weltweit auch nach der Silk Road — einem mittlerweile eingestellten Schwarzmarkt im Deep Web – mit illegalen „Nootropics“ experimentieren.
and I have some HTML
<p>Die <span class="caps">GDS</span> zeichnet also das Bild einer Gesellschaft, in der Drogen primär Rausch, Genuss und Spass sind. Tabak ist zwar das bekannteste – und ungesündeste – Mittel gegen Stress, aber sonst sind die Leistungssteigerer in der Liste weit abgeschlagen. Trotzdem gibt es Untersuchungen, die nahelegen, dass bis zu 20% der Studierenden in Deutschland während der Prüfungsvorbereitung Ritalin einschmeissen <a href="#_ftn2" name="_ftnref2">[2]</a>, Reportagen, dass britische Studierende Modafinil bestens kennen<a href="#_ftn3" name="_ftnref3">[3]</a> und Studierende weltweit auch nach der <a href="https://de.wikipedia.org/wiki/Silk_Road" target="_blank">Silk Road</a> — einem mittlerweile eingestellten Schwarzmarkt im Deep Web – mit illegalen „Nootropics“ experimentieren.</p>
To find the text in the HTML I produce some crazy ass regex, where I split by the spaces and join again with
\s*?(?:<\/?[^>]*?>)?\s*?
That works most of the time as seen here: https://regex101.com/r/hG9lT9/1
In the case stated on top it doesn't work because there is a comma after a html tag and there are also different dashes. So I'm searching to create a more general regex expression to fit the cause.
Here is the example that doesn't work: https://regex101.com/r/hG9lT9/2