"Real software engineers work from 9 to 5, because that is the way the job is described in the formal spec. Working late would feel like using an undocumented external procedure."
Tevens wordt het als algemeen bekend/aanvaard beschouwd dat regular expressions, hoe cool en krachtig ze ook zijn, niet geschikt zijn voor het parsen van iets als HTML.
Reporter: Mister Gandhi, what do you think of western civilisation?
Gandhi: I think it would be a good idea
weet niet waar je dat vandaan hebt... hoe denk je dat expat werkt?MUBA schreef op 09 juli 2004 @ 23:00:
Tevens wordt het als algemeen bekend/aanvaard beschouwd dat regular expressions, hoe cool en krachtig ze ook zijn, niet geschikt zijn voor het parsen van iets als HTML.
Steun Elkaar, Kopieer Nederlands Waar!
PHP:
1
| $html = preg_replace (">[\r\n\s]<", "><", $html); |
Zoiets misschien... Tis niet waterdicht (spaties en enters aan het begin en eind van de file worden overgeslagen), maar het werkt wel redelijk goed denk ik. Niet getest though.
offtopic:
Waarom een nieuw topic?
Je oude topic dekt de lading van dit topic ook nog wel hoor...
Waarom een nieuw topic?
[ Voor 25% gewijzigd door NMe op 09-07-2004 23:16 ]
'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.
Verwijderd
Je kan in je HTML ook < en > gebruiken, terwijl je officieel HTML entities moet gebruiken. Een RegEx in elkaar knutselen lijkt me dan ook onmogelijk.
Je moet eigen een tokenizer maken die de tekenreeks teken voor teken inleest en dan een array maakt;
Ik heb een Tokenizer geschreven in JavaScript.
De code van die Tokenizer kan je hier downloaden.
Je moet eigen een tokenizer maken die de tekenreeks teken voor teken inleest en dan een array maakt;
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| foo1<b>foo2</b>foo3 // a[0]["value"] = "foo"; a[0]["type"] = "TEXT_NODE"; a[1]["value"] = "<b>"; a[1]["type"] = "OPEN_NODE"; a[2]["value"] = "foo2"; a[2]["type"] = "TEXT_NODE"; a[3]["value"] = "</b>"; a[3]["value"] = "CLOSE_NODE"; ... |
Ik heb een Tokenizer geschreven in JavaScript.
De code van die Tokenizer kan je hier downloaden.
Pagina: 1