1. Java / Говнокод #18448

    +38

    1. 1
    link.setUrlDownload(url.replaceAll("%21", "!").replaceAll("%20", ""));

    Необучаемость.

    Запостил: 3_14dar, 08 Июля 2015

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

    • Алсо %%2120
      Ответить
      • Круто. А %%2021 даст другой результат. Обожаю алгоритмы с труднопредсказуемым поведением.
        Ответить
        • что это за регулярка такая волшебная?
          Ответить
          • Какая регулярка, дыбил?
            Ответить
            • дибил это ты. Не забывай об этом
              Ответить
            • Что это за регулярка ?

              "%21"
              Ответить
              • Можно сказать, что это регулярка, которая матчит последовательность из трёх символов: процента, цифры два и цифры один.
                Ответить
                • тогда к чему разговоры выше про %%2021?

                  А, тьфу ты, просто первую он заменит, а вторую - нет

                  А я то думал что то интересное и в жабе свои регулярки с % и скобками
                  Ответить
                  • К тому, что из-за того, что алгоритм используется доморощенный, замена осуществляется последовательно, %%2021 и %%2120 будут декодированы по-разному.

                    > свои регулярки с % и скобками
                    Но зато там есть регулярки с \, \\ и \\\\. И хрен разберёшься, что сделает "\\\\".replace("\\\\","/")
                    Ответить
                    • надеюсь там есть буквальные строки
                      Ответить
                      • Если ты про "сырые", которые @, то нет. Зато есть функция в IDE.
                        Ответить
                        • А в IDEA есть даже тест регулярок прямо из редактора...
                          Ответить
                          • А есть где-то подсветка синтаксиса регулярок в строках?
                            Ответить
                            • Ну там хреновенько подсвечивает - показывает ошибки типа несбалансированных скобок да и всё.
                              Ответить
                              • Где там? IDEA? И как оно распознает регулярки?

                                Меня бы другое интересовало - автоматический анескейпинг с подсветкой синтаксиса. Чтобы \\ и \ подсвечивалось по-разному.
                                Ответить
                                • буквальные строки юзай
                                  Ответить
                                  • Бэкслеш надо экранировать для регекспов, сырые строки тут не причем.

                                    Опять автоминуса?
                                    Ответить
                            • https://regex101.com/
                              Ответить
              • Это эскейпинг url, дыбил!
                Ответить

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