1. C# / Говнокод #18949

    +2

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    public int RowSpan {
                get {
                    int p = HtmlText.IndexOf("rowspan");
                    if (p > -1) {
                        int index = HtmlText.IndexOf(" ", p + 8);
                        int index1 = HtmlText.IndexOf(">", p + 8);
                        int index2 = HtmlText.IndexOf("/", p + 8);
                        if ((index > index1) && (index1 != -1))
                            index = index1;
                        if ((index > index2) && (index2 != -1))
                            index = index2;
                        string s = HtmlText.Substring(p + 8, index - p - 8);
                        return Convert.ToInt16(s);
                    } else
                        return -1;
                }
                set {
                    if (value == 0) {
                        HtmlText = HtmlText.Replace("rowspan", string.Empty);
                    }
                }
            }
            public int ColSpan {
                get {
                    int p = HtmlText.IndexOf("colspan");
                    if (p > -1) {
                        int index = HtmlText.IndexOf(" ", p + 8);
                        int index1 = HtmlText.IndexOf(">", p + 8);
                        int index2 = HtmlText.IndexOf("/", p + 8);
                        if ((index > index1) && (index1 != -1))
                            index = index1;
                        if ((index > index2) && (index2 != -1))
                            index = index2;
                        string s = HtmlText.Substring(p + 8, index - p - 8);
                        return Convert.ToInt16(s);
                    } else
                        return -1;
                }
            }

    а тут регулярки он не осилил

    Запостил: Lokich, 02 Ноября 2015

    Комментарии (11) RSS

    • Я полагаю, он просто в курсе, к҉ак͠ие п̡р̵о̡б͟л̛е͢м̢ы͢ могут ̛в̡оз͢н̕и͏к̕ну̢т҉ь, е̗͇͉с̥̪̗̼͞л͕̜̫͉͓̼̜͞и͚̼̖͜ ̯п͖̰͍̤ͅа͏̦̗̘̖̩̞р̞͎͔с̶̫̺̺͚ит̙̀ь̙̜ ͎̰̞̮̖H̖̘͖̳̙̩͜T̼̹M̨̗͈̩̬̯͇̗L̰̬̠̝ р̖̞͉͉͈͔̆̒̿е̡͕̂̅͐̌г̦̮͇̎ͬу̗́̉̓̒̊͌̎л̸̲͈̳̙̪я ̪͕̼̯ͧ̎͞р̡̠͇͔͕̄͂̄н̲̺͍̫̙̆͊͐̋͢ы̝̲̺̦̞͚̅́̄͂м͋ ͉̦͉̗̝́͐̾ͬ̂и̷̬̩͍͚̻͛ͩ̓̄ͯ̄ ̻̭̥̼̱͎ͣ̉͛̋͝вͩ̾ͭ̇ͦͤͯы͏̪̮̜̺͕̙р̴̠͕̻͉̬̂̈́а̓̇ͦ ̷͈͇̼̳̯͈ж̧̮͒͑е̡̻͊ͧ̓ͤ̈́н̲̖̮̳̟̱̓ͅиͬͣ̒͏̘̬я͑ͯ̇ ̞͍͓͎̌͛м̦̦̼̙̱͂͌ͩ͡и̗̮̃ͥ̅͋͠ hͧͮ͌̽̄̓҉҉͖͓̱̟̮̝̼̹ȩ͔̮̖̞̇ ̵̛͔͛ĉ̨̢̹͖̏ͭ̊ͪͦ͊̅͠oͨ͂̍͞҉̜̰̭̠̺̦̖͔m̛̌̽̔̔͛͛ ̴̼̠̱͈̳̝̰͘e̢͎̻̦̼̎s̸̥̫̩͚̘̦̦̤͊͊ͧ͆́H̉͌̈̽̓̋̔̇ ̨̦͓̘̣̙̖̪͖̲̱͈̱̈̓͋͛̽ͦ̈̂͊ͩ̾̀͟͠Ẻ̋͛ͤͥͪ̑ͮ̆̌̀̚ ̶̸̷̢̛̠̥̙̞̩͐͗ ̮̺̼͕̪͍͕̤̺͖̝̗̖̠̻̄͑ͤ̃ͥ́͊̓͌͘͟ͅC͐̍̑ͭ̄̾̐ͩ͆̆̇ͩ ̴̶̡̪͈͙̺̞̭̼͙͓̦̯͎̬ͥ̀̅̎͘͡Ó̶̵̡͓̜͖̅̉̔̄̈ͪ͊͊̀́ ̭̹͙̣̭M̡̜͎̖̬͓̮̻͇͚̦̤̺̳͓͓͌ͨͮͤ͛͐̆͊ͣ́͌ͭ̋ͩ̊͢Eͩ ͔͇͙͙̤̹ͯͪ͗̑͢S̵̢̲͇̯̥͓̓ͮ́̃̌ͯ͌̎̎̊͑͂ͯͤ̽̒ͫ̏́͟͡ ͈̝̻͍
      Ответить
      • Это такой прикол или кто-то всерьез считает, что нельзя регулярками HTML парсить? Понятно, что сам язык не является регулярным, и полностью распарсить не получится, но если надо найти какие-то опредленные куски, то почему нет?
        Ответить
        • Кмк, HTML известной регулярной структуры вполне приемлимо парсить регулярками, особенно если задача одноразовая. А вот использовать как средство универсального назначения - не стоит.
          Ответить
        • Вообще это была отсылка к известному эпичному ответу на вопрос на stackoverflow, не более.
          Ответить
      • то есть ты считаешь, что выраженя типа ключ="значение" нужно парсить сабстрингами?
        Ответить
        • Собственно сабстринг будет работать в несколько раз быстрее чем любая регулярка...
          Ответить
          • насколько же быстрее? 100 000 регулярок в секунду, против 500 000 сабстрингов в секунду? в любом случае, тут вопрос не скорости, и качества и стабильности этой работы.
            Ответить
    • о, локич снова принес покушать такс что тут у нас ага парсим хтмл
      Ответить

    Добавить комментарий