Quasi ogni lingua ha una funzione integrata che può dividere una stringa in una determinata posizione. Tuttavia, non appena nella stringa sono presenti tag html, la funzione integrata non funzionerà correttamente.
Il tuo compito è scrivere un programma o una funzione che divide una stringa all'ennesimo carattere ma non conta i caratteri dei tag html e genererà un html valido. Il programma deve mantenere la formattazione. Gli spazi esterni ai tag html possono essere conteggiati o non conteggiati, come si desidera, ma devono essere conservati. Tuttavia, è possibile scambiare più spazi consecutivi in un unico spazio.
Ingresso:
- la stringa
- la posizione in cui dividere (in base a 0)
Questi possono essere presi come argomenti di programma o funzione o possono essere letti dall'input standard.
Output: la stringa divisa che può essere restituita o scritta nell'output standard.
L'input sarà html valido, non conterrà alcuna entità (come ). I tag che vengono aperti dopo il limite di caratteri devono essere omessi dall'output (vedere l'ultimo esempio).
Esempio:
Ingresso
:, <i>test</i>3
Uscita:<i>tes</i>
Ingresso
:, <strong><i>more</i> <span style="color: red">complicated</span></strong>7
Uscita:<strong><i>more</i> <span style="color: red">co</span></strong>
Ingresso
:, no html2
Uscita:no
Ingresso
:, <b>no</b> <i>html root</i>5
Uscita:<b>no</b> <i>ht</i>
Ingresso
:, <b>no img</b><img src="test.png" />more text6
Uscita:<b>no img</b>
Puoi usare qualsiasi lingua e la libreria standard della lingua data. Questo è il golf del codice, il programma più corto vince. Divertiti!
<e >invece di <>, quindi no ( <o >non sarà presente neanche).
<i>ab</i><b>cd</b> 1?
<i>a</i>?
<i>a</i><b></b>(il che ha senso se si considera che bpotrebbe anche essere divo img.)