Posted By

reboltutorial on 03/09/10


Tagged

Parsenone


Versions (?)

Parse and none


 / Published in: C#
 

URL: http://reboltutorial.com/blog/parsing-optional-html-tag-attributes-using-none-keyword/

  1. content: {<tag attribute1="valueattribute1" attribute2="valueattribute2">
  2. </tag>
  3. <tag attribute2="valueattribute21" attribute1="valueattribute11" >
  4. </tag>
  5. }
  6.  
  7. content: {<tag attribute1="valueattribute1" attribute2="valueattribute2">
  8. </tag>
  9. <tag>
  10. </tag>
  11. }
  12.  
  13. content: {<tag attribute1="valueattribute1" attribute2="valueattribute2">
  14. </tag>
  15. <tag attribute2="valueattribute21">
  16. </tag>
  17. }
  18.  
  19.  
  20.  
  21.  
  22. {<tag } {attribute1="} valueattribute1 {"} {attribute2="} valueattribute2 {"} {>}
  23. Bla ...
  24. {</tag>}
  25.  
  26. attribute1: [{attribute1="} copy valueattribute1 to {"} thru {"} ]
  27. attribute2: [{attribute2="} copy valueattribute2 to {"} thru {"}]
  28.  
  29. rule: [any [to {<tag } thru {<tag } [attribute1 attribute2
  30.  
  31. (print valueattribute1 print valueattribute2) | attribute2 attribute1
  32. (print valueattribute2 print valueattribute1)
  33. ] {>} to {</tag>} thru {</tag>}
  34.  
  35. ] to end]
  36.  
  37.  
  38. attributes-rule: [attribute1 attribute2 (print valueattribute1 print valueattribute2 )
  39. | attribute2 attribute1(print valueattribute2 print valueattribute1)
  40. | none
  41. ]
  42.  
  43. rule: [any [to {<tag } thru {<tag } attributes-rule {>} to {</tag>} thru {</tag>}] to end]
  44.  
  45.  
  46. attributes-rule: [[attribute1 | none] [attribute2 | none] (print valueattribute1 print valueattribute2)
  47. | attribute2 attribute1(print valueattribute2 print valueattribute1)
  48. | none
  49. ]
  50.  
  51. rule: [any [to {<tag } thru {<tag } attributes-rule {>} to {</tag>} thru {</tag>}] to end]
  52.  
  53. attributes-rule: [[attribute1 | none] [attribute2 | none] (print valueattribute1 print valueattribute2
  54. valueattribute1: none valueattribute2: none)
  55. | attribute2 attribute1(print valueattribute2 print valueattribute1
  56. valueattribute1: none valueattribute2: none
  57. )
  58. | none
  59. ]
  60.  
  61. rule: [any [to {<tag } thru {<tag } attributes-rule {>} to {</tag>} thru {</tag>}] to end]

Report this snippet  

You need to login to post a comment.