Rebmu, 91 caratteri
A causa del Catch-22 devo pubblicare per ottenere l'URL di questa risposta. : - / Va bene, capito.
paTSrd http://codegolf.stackexchange.com/a/28154[th<a name="28154">th<code>cpCto</code>]prC
Rebmu è un dialetto di Rebol e puoi leggere tutto su di esso . Il Rebol equivalente qui sarebbe:
parse to-string read http://codegolf.stackexchange.com/a/28154 [
thru <a name="28154">
thru <code>
copy c to </code>
]
print c
PARSE di Rebol è una sorta di risposta altamente istruita a RegEx. Inizia una posizione parser dell'input (che può essere qualsiasi serie, inclusi blocchi strutturali ... dati binari ... o tipi di stringa) . Le regole sono una lingua per come si muove la posizione di analisi.
Tag e URL sono in realtà solo stringhe nascoste nella lingua. Ma sono "aromatizzati" e dato che Rebol è digitato in modo dinamico puoi controllare quel tipo. READ, ad esempio, sa che se gli dai una stringa basata sull'URL, dovrebbe inviarla a un gestore di schemi per fare la lettura. (In questo caso, quello registrato per HTTP). Si ottengono byte UTF-8 per impostazione predefinita, quindi utilizziamo to-string per decodificarlo e ottenere una serie di punti di codice in una normale stringa Unicode.
Nel caso del dialetto di analisi, l'incontro con un tipo di tag viene semplicemente associato come se fosse una stringa che assomigliava al tag. THRU è un'istruzione che significa "salta fino a quando la regola che segue è abbinata, quindi posiziona la posizione di corrispondenza alla fine di ciò che hai appena abbinato". (TO è l'analogo che corrisponde, ma lascia la posizione di analisi prima dell'elemento).
Quindi passiamo oltre <a name="28154">
. Quindi passiamo oltre la prossima occorrenza di <code>
, con la nostra posizione di analisi ora situata subito dopo >
. Il comando COPY di PARSE ci consente quindi di copiare i dati in un'altra regola, in questo caso quella regola è [TO </code>]
... quindi entriamo nella variabile C tutto fino a prima <
.
Bene , eh? :-)
Tecnicamente potrei radere di più, ad esempio cercando TO "</"
e questo salva tre caratteri - non è necessario abbinare l'intero </code>
tag di fine quando </
lo farebbe. Argomenti simili potrebbero essere fatti per il tag iniziale. Ma Rebmu riguarda il golf letterato ... anche se all'inizio potresti pensare che sia strano!
AGGIORNAMENTO : il /body
trucco è fuori dal comune, ma allo stesso modo lo lascerò così com'è ... perché penso che sia più educativo in questo modo.