- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
public static function trimExtraLineBreaks(string:String):String
{
var trimmedString:String = string;
for(var i:int = 0; i < 20; i++)
{
trimmedString = trimmedString.replace(new RegExp("\r\r","g"),"\r");
trimmedString = trimmedString.replace(new RegExp("\r\n","g"),"\r");
trimmedString = trimmedString.replace(new RegExp("\n\n","g"),"\n");
trimmedString = trimmedString.replace(new RegExp("\n\r","g"),"\n");
trimmedString = trimmedString.replace(new RegExp("\n ","g"),"\n");
trimmedString = trimmedString.replace(new RegExp("\r ","g"),"\n");
trimmedString = trimmedString.replace(new RegExp(" \n","g"),"\n");
trimmedString = trimmedString.replace(new RegExp(" \r","g"),"\n");
}
return trimmedString;
}
Натолкнулся на просторах github'а во время поиска чего-то там... Ей богу сразу забыл, что искал.
Lure Of Chaos 27.03.2011 10:33 # 0
-M- 27.03.2011 20:33 # +1
expl 27.03.2011 22:01 # −2
В принципе, если бы бага обнаружилась в production-версии, я бы так и заткнул,
а потом бы включал мозги и писал бы что-то более человеческое.
Lure Of Chaos 27.03.2011 22:17 # +2
gegMOPO4 28.03.2011 00:07 # +2
Lure Of Chaos 28.03.2011 14:50 # 0
gegMOPO4 28.03.2011 16:33 # +1
Лучше воспользоваться готовым инструментом. Короче, понятнее, эфективнее. Ниже turdman привёл правильное решение.
wvxvw 28.03.2011 09:27 # 0
Записать багу и к следующей версии исправить. Если это какое-то очень важное ПО, то предупредить заказчика, но не пытаться править в продакшне, ну никогда это ничем хорошим не заканчивается :)
turdman 28.03.2011 12:17 # +1
Между грязным bugfix'ом и безграмотным грязным bugfix'ом все-таки есть разница
Lure Of Chaos 28.03.2011 16:49 # 0
gegMOPO4 28.03.2011 17:14 # +1
wvxvw 28.03.2011 21:45 # 0
Предположим, вы сейчас предложили правильный вариант. Но код, который был в продакшне зависел от неправильного. Предположим, что где-то дальше по коду кто-то делал Вы поправили, все заработало. Вечером в бешенстве звонит заказчик и говорит, что сообщения об оплате перестали приходить вот уже как 5 часов. И вы становитесь угол, и повторяете мантру "я никогда не буду делать изменения в продакшене без предварительного тестирования".
gegMOPO4 28.03.2011 22:23 # 0
wvxvw 28.03.2011 23:00 # +1
bugmenot 27.03.2011 22:49 # +2
(но не говорите о комбинаторике)
Lure Of Chaos 28.03.2011 14:52 # 0
bugmenot 28.03.2011 19:15 # 0
^G не буду, а к ночи помяну Soft CR из верхней половины таблицы