Подскажите как переделать Базу Данных
71 сообщение
#16 лет назад
ossadchy, да ничего 
k-a-j, а смысл предлагать в том, что нужно использовать адекватные инструменты. Если у меня нету валянок а только тапки, то вы мне все равно не посоветуете тапки зимой носить. Эти инструменты как раз и создавались для обработки текста, и дикий мазохизм для этого Делфи использовать.
4 сообщения
#16 лет назад




В общем, задача, уровня секретарши-блондинки

1. Открываем файлик в Word'е
2. Нажимаем "Правка"->Заменить
3. Вводим в поля:
- Заменить: ^13
- Заменить на: "^13"
4. Жмем кнопку: Заменить всё
5. То же самое, только пробел заменяем на: ", "
6. К самой первой строчке, в начале, ручками дописываем: "
p.s. Мануал от Билла, в справке офиса: "Поиск и замена знаков абзаца, разрывов страниц и других элементов"
4 сообщения
#16 лет назад
2 m00t: 
Это нюансы, которые решаются прочтением справки, на которую я дал наводку..
Вот это:
(\@?*.?{1;4})^32
вот на это:
\1", "
Цитата:
Подстановочные знаки для элементов, которые необходимо найти и заменить
Знак
Любой знак
Введите ?.
Например, если ввести «г?д», то будут найдены слова «гад», «гид» и «год».
Любая последовательность знаков
Введите *.
Например, если ввести «г*д», то будут найдены слова «год» и «город».
Начало слова
Введите <.
Например, если ввести «<(горо)», то будут найдены слова «город» и «гороскоп», а слово «огород» найдено не будет.
Конец слова
Введите >.
Например, если ввести «(ор)>», то будут найдены слова «ор» и «упор», а слово «оратория» найдено не будет.
Один из указанных знаков
Введите .
Например, если ввести «крн», то будут найдены слова «крен» и «кран».
Любой знак из указанного диапазона
Введите .
Например, если ввести «оль», то будут найдены слова «голь» и «ноль». Диапазон должен быть сформирован по возрастанию.
Любой знак, кроме знаков, которые находятся в диапазоне, указанном в скобках
Введите .
Например, если ввести «коа», то будут найдены слова «кода» и «коса», а не слова «кожа» и «кора».
Ровно n раз повторенный предыдущий знак
Введите {n}.
Например, если ввести «ранен{2}ый», то будет найдено слово «раненный», а не слово «раненый».
Не менее n раз повторенный предыдущий знак или выражение
Введите {n,}.
Например, если ввести «ранен{1,}ый», то будут найдены слова «раненый» и «раненный».
От n до m раз повторенный предыдущий знак или выражение
Введите {n,m}.
Например, если ввести «10{1,3}», то будут найдены «10», «100» и «1000».
Один или более раз повторенный предыдущий знак или выражение
Введите @.
Например, если ввести «в@ерх», то будут найдены слова «верх» и «вверх».
Примечания
Используйте круглые скобки для группировки подстановочных знаков и текста, а также указания порядка обработки знаков. Например, введите <(при)*(ние)>, чтобы найти слова «призвание» и «приключение».
Для поиска выражения и последующего изменения порядка его компонентов используйте подстановочный знак \n. Например, введите (Годунов) (Борис) в поле Найти и \2 \1 в поле Заменить на, чтобы найти словосочетание «Годунов Борис» и заменить его на «Борис Годунов».
А вобще советую прочитать, в оригинале, там еще много чего интересного, хотя бы это:
Цитата:
Поиск и замена текста или других элементов
Всех форм прилагательных
Например, замена слов «worse» на «better» одновременно с заменой слов «worst» на «best».
Всех времен основных глаголов
Например, замена слов «sit» на «stand» одновременно с заменой слов «sat» на «stood».
127 сообщений
#16 лет назад
m00t а можно поинтересоваться где в моём коде бредовые строки?1. Открываем файлик в Word'е
2. Нажимаем "Правка"->Заменить
3. Вводим в поля:
- Заменить: ^13
- Заменить на: "^13"
4. Жмем кнопку: Заменить всё
5. То же самое, только пробел заменяем на: ", "
6. К самой первой строчке, в начале, ручками дописываем: "
p.s. Мануал от Билла, в справке офиса: "Поиск и замена знаков абзаца, разрывов страниц и других элементов"
вот человек описал мой код :D (ну у меня там погрешности маленькие, скобки не проставлены, но смысл понятен должен быть и бес скриптов в полинтернета)
Вы ребят сюда ещё алгоритм Декстры приклейте!
$file .= '"'.str_replace(' ','","',$row).'"'."\r\n"; // Ставим впереди кавычку, потом заменяем пробел на закрывающуюся кавычку, запятую и снова открываем кавычку, пишем данные из базы и закрываем кавычку, переводим строку!
Тока я бы сразу в XLS засовывал, нафиг такие извраты с СSV а станд. EXCEL файл при тех же напряжонных телодвижениях и читать приятнее и обрабатывать удобнее!
А насчот ребят линуксоидов(не хочу обидеть, сам на слаксе), скажите нахрена вы до сих пор задницу газетой подтираете если уже давно придумали туалетную бумагу???
21 сообщение
#16 лет назад
Мда, темка получилась...2 k-a-j прав, понятия не имею а akw

2 BUTAJIUK тоже вариант, спасиб. Аж стыдно

ВУсем большое спасибо, проблема решена.
2 сообщения
#16 лет назад
Люди, будте проще, зачем php забивать гвозди
Забиваете в редактор AkelPad, в меню выбираете заменить, поставьте галочку Esc последовательностит:
что - пробел
на что - ","
Жмете заменить, далее:
что - \n
на что - "\n"
Да, будет работать неправильно, если имя состоит из двух или более частей разделенных пробелом. Можно через эксель сделать, только писать обломно

21 сообщение
#16 лет назад
Цитата:Да, будет работать неправильно, если имя состоит из двух или более частей разделенных пробелом. Можно через эксель сделать, только писать обломно
вот именно...
а пробелов ох как много

2 сообщения
#16 лет назад
Копируете в эксель, выбираете использовать мастер импорта (появляется иконка внизу вставленных данных), там выбираете использовать разделитель, жмете далее, там выбираете пробел, жмете готово - столбцы разделены. Теперь с каждым столюцом можно работать отдельно. Например можно взять все кроме первого (это будет полное имя) и перенести в AkelPad, там сделать замену \t на пробел и \n на "\n" - получим заковыченные имена, примерно то же самое с первым столбцом, останется только столбцы разделить запятой
127 сообщений
#16 лет назад
Так простая регулярка в одну строчку тож самое сделает, просто уже будет не str_replace а preg_replace("/({2,}+)/i", ' ', $data); заменит все длинные пробелы одним пробеломА вооще кусок данных закинул бы - проще дело то пошлоб
589 сообщений
#16 лет назад
Интересно, хоть кто-то предусмотрел, что в имени пользоватея могут быть квычки?
120 сообщений
#16 лет назад
2 sa_t_an:Цитата:
m00t а можно поинтересоваться где в моём коде бредовые строки?
можно.
1) на входе у нас текстовый файл вида
*** имя
*** вася
Откуда берется, простите, работа с БД?
2) ну это уже не бред, а просто недоработка. str_replace() не решит проблему, так как в имени могут быть пробелы.
Предлагаю закрыть тему.
71 сообщение
#16 лет назад
Цитата ("sa_t_an"):
А насчот ребят линуксоидов(не хочу обидеть, сам на слаксе), скажите нахрена вы до сих пор задницу газетой подтираете если уже давно придумали туалетную бумагу???
Не понятно что Вы этим хотели сказать... Что Линукс "отстающая" система по сравнению с Окошками?
Это то хорошо. Но как Вы в Ворде будете решать задачу если:
* файлов сотни
* колонок десяток и нужно их перемешать в шахматном порядке
* строки удовлетворяющие некоторому критирю нужно удалить
P.S.
Тему не закрывайте. Интересная беседа получается

4607 сообщений
#16 лет назад
Если нужно однажды, то в Excel (как советует korobkov и hobl (СЦЕПИТЬ)). Нужна только мышка и один раз ввести запятую (опять же можно мышкой).Но если нужно часто и или очень часто, то конечно AWK (как советовал ossadchy

4 сообщения
#16 лет назад
2 VoiceДа вроде элементарно все решается, с помощью макросов и регулярных выражений в том же офисе

ну а на счет awk, то под окнами его полноценно заменит wsh.
Просто ИМХО нормальный человек под каждую задачу выбирает ср-во решения, которое оправдывает себя. Поэтому есть задачи которые проще решить под никсами, есть которые под окнами. Но есть и такие вещи которые очень просто решаются стандартными средствами в любой ОС. Все зависит от образования решающего задачу. Я уверен, что тут не я один такой, который изначальное ТЗ, может решить как минимум 20 разными способами, начиная от банальной замены, заканчивая написанием скриптов и утилит.

127 сообщений
#16 лет назад
Цитата ("Voice"):Не понятно что Вы этим хотели сказать... Что Линукс "отстающая" система по сравнению с Окошками?
Причом тут отстающая??? Она не удобная для некоторых решений, это все равно как на блятки (сори за мой французский) ездить на бульдозере.
Я ещё не видел ниодной некоммерческой разработки достойной внимания под Линукс. Создается впечатление, что все линуксоиды только и делают,
что пишут вирусы и эксплойты... Мля, ну децкий сад чесн слово. Да и тормоз он припорядошный (даже при перекомпиляции ядра) под иксами...
А насчот комплексной замены в файлах-папках под Win качаем sbreplaser и хреначим что надо одним движением руки!
71 сообщение
#16 лет назад
Цитата ("BUTAJIUK"):2 Voice
Да вроде элементарно все решается, с помощью макросов и регулярных выражений в том же офисе

1. Это не "стандартный" инструмент входящий в состав ОС. Еще и огромных денег стоит.
2. Это все равно что стрелять по воробьям из гаубицы.
3. Это сложнее чем тот же awk.
Цитата ("BUTAJIUK"):
Но есть и такие вещи которые очень просто решаются стандартными средствами в любой ОС.
Ну решите нашу простую задачу стандартными средстами Windows.

Все зависит от образования решающего задачу. Я уверен, что тут не я один такой, который изначальное ТЗ, может решить как минимум 20 разными способами, начиная от банальной замены, заканчивая написанием скриптов и утилит.

Ну это понятно, но количество вариантов сильно зависит от инструментария.
Цитата ("sa_t_an"):
Она не удобная для некоторых решений
Например.
Цитата ("sa_t_an"):
это все равно как на блятки (сори за мой французский) ездить на бульдозере.
Это вы начали
Цитата ("sa_t_an"):
Я ещё не видел ниодной некоммерческой разработки достойной внимания под Линукс. Создается впечатление, что все линуксоиды только и делают, что пишут вирусы и эксплойты...
Ну, во первых, количество разработок (внимания) к ОС еще не значит о ее "крутизне" (в техническом смысле).
А во вторых взять тот же Compiz, KDE. Даже оконный менеджер Висты и рядом не стоял.
Цитата ("sa_t_an"):
Мля, ну децкий сад чесн слово. Да и тормоз он припорядошный (даже при перекомпиляции ядра) под иксами...
Хм... Не замечал никогда. Вы поднимите веб-сервер для локальной сети и файлопомойку на первом пне под Виндовс?
А почему из 500 самых мощных компьютеров мира Виндовс стоит лишь на 2 (или около того)?
Забавно получается...
Цитата ("sa_t_an"):
А насчот комплексной замены в файлах-папках под Win качаем sbreplaser и хреначим что надо одним движением руки!
А если у меня есть катало в который периодически добавляются файлы и нужно их, соответственно, периодически модифицировать, архивировать и отправлять по почте?

// Это я к тому что, все эти средства рассчитаны на стандартные ситуации, и никогда не дадут такой гибкости как подход Unix.
// Другое дело если Вам ее и не нужно...
P.S.
Если же брать десктоп для рядового пользователя то однозначно лучше Mac OS.
127 сообщений
#16 лет назад
Цитата ("Voice"):Ну решите нашу простую задачу стандартными средстами Windows
Ну скажем, что и линукс не решит без предустановленых пакетов стандартными средствами ничего, так же и виндоза, загрузи в неё пару приложений и будет все работать,
тут у нас спор просто не о чом.
Теперь дальше, допустим тот же самый Wi-Fi на Slax пропадает как будто его и не было, и все с этим согласны и предлагают целую кучу решений, вопрос - на кой хрен
мне куча решений если надо одно, что бы Wi-Fi работал и все...
Дальше, как по вашему сколько времени у вас уйдет что бы создать 3D игру на Linux???
Просто прикинте... У меня на масдае для простенького уровня (стандарта 2006 года) где то 2-3 дня.
Дальше Цитата ("Voice"):
А во вторых взять тот же Compiz, KDE. Даже оконный менеджер Висты и рядом не стоял.
Про висту дуру все понятно, она нормально заработала тока на 16 Гб памяти (прирост в 10 раз где то), но опять возвращаемся к инструментам,
я понимаю что многопользовательский режим и сетевые технологии просто необходимы в доме для личного использования, и мясорубки
с ДУ просто должны быть в каждом доме, отсюда возникает вопрос, на кой хрен, если мясо всё равно в ручную закладывать!
Цитата ("Voice"):
Вы поднимите веб-сервер для локальной сети и файлопомойку на первом пне под Виндовс?
Это к предыдущей теме, на кой мне сеть поднимать дома? Как альтернативный вопрос задам такой, а вы хоть на каком нибудь Линуксе
создадите 3D модель в 5000к с HDRI и пиксельными шейдерами что бы он не хрюкнул (или понятие кернел паник - это чуждое понятие линуксоида

Цитата ("Voice"):
А если у меня есть катало в который периодически добавляются файлы и нужно их, соответственно, периодически модифицировать, архивировать и отправлять по почте?
Тем же инструментом и делайте.
У нас сейчас спор ни о чом, можно придумывать тысячи что можно и что нельзя на OS той или иной и никчему он не приведёт, пока народ не поймет, что бумагу УДОБНЕЕ резать
ножницами а сталь рубить СТАНКОМ а не наоборот (хотя и это тоже можно)...
А насчот стандартных инструментов Линукса, вот и обьясните человеку, что самый легкий выход в его ситуации - это снести нестандартный виндовс, поставить стандартный Линукс (но... учитывая пакеты какие ему нужны или лучше сразу весь 4гб шоб не ошибиться
