Добро пожаловать к нам в гости! Наш сайт посвящён программе NeoBook, с помощью которой вы легко сможете создавать собственные мультимедиа-приложения без необходимости изучать сложные языки программирования! Зарегистрируйтесь, чтобы стать членом нашего сообщества.
на JavaScript - есть такая функция (сам не проверял)
Код
function str_replace(search, replace, str) { return str.split(search).join(replace); } //вызов str_replace([search],[replace],[str])
Добавлено (02 Июня 2013, 12:15) --------------------------------------------- А что вникать, если есть где запустить скрипт, то я тебе запупырю, там лишь еще добавятся пару переменных и все
Сообщение отредактировано Сергей - Вс, 02 Июня 2013, 12:16
Не -не , JavaScript я вообще стараюсь избегать. Если только без него уже ни как.
Добавлено (02 Июня 2013, 12:17) ---------------------------------------------
Цитата (Сергей)
то я тебе запупырю,
Не, просто не хочу что то лишнее подсоединять. Так то плагин по моему какой то есть, но так как в этом не шарю, я с ним и не разбирался даже. Не хочешь читать хелп?
можно через тырнет. залить на сервак скрипт и все Есть минусы, но и есть плюсы
Добавлено (02 Июня 2013, 12:20) --------------------------------------------- других вариантов нет... только цикл.
Добавлено (02 Июня 2013, 12:22) --------------------------------------------- Регулярка хороша для поиска, причем и замены во всем документе за раз. Но только на одно значение. В твоем случает, от регулярки проку мало.
Ну вот плагин NeoPHP. В принципе там всего одна команда, но надо с собой таскать дополнительные файлы.
Мож создать тему с этим плагином и добавлять туда примеры для тех кто в танке? Ну вставил я в плагине код, а как направление ему дать с чем этот код должен работать? В твоем примере со строкой понятно, а если непосредственно с файлом, то как? Судя по примеру с плагином PHP с обработкой строк и массивов в разы быстрее работает чем НБ. В принципе как дополнение к НБ думаю не плохое было бы.
Добавлено (02 Июня 2013, 23:38) ---------------------------------------------
<?php $mnemo = array("À","Á","Â","Ã","Ä","Å");//Массив поиска $kiril = array("А","Б","В","а","б","в");//Массив замены //В массивах должны быть одинаковое колл-во значений $fl = "NeoBook.hhc";//Путь до файла $hd = fopen($fl, "r") or die('Ошибка открытия файла');//Открываем для чтения, при ошибке выводим сообщение $str = fread($hd,filesize($fl));//Считываем содержимое в переменную $str fclose($hd);//Закрываем файл $result = str_replace($mnemo,$kiril,$str);//Функция замены $hd = fopen($fl, "w") or die('Ошибка открытия файла');//Открываем для записи, при ошибке выводим сообщение fwrite($hd,$result);//Записываем результат в файл fclose($hd);//Закрываем файл ?>
Цитата (mishem)
А вот здесь о минусах и плюсах поподробней можно?
я про интернет вариант. Где скрипт залит на хостинге...
Добавлено (03 Июня 2013, 09:02) ---------------------------------------------
Цитата (mishem)
В принципе как дополнение к НБ думаю не плохое было бы.
я использовал этот плагин, когда он требовал таскать один лишь файл. Потом перестал, т.к. вроде надо таскать целую кучу файлов. Для "домашнего" использования самое то.
Сообщение отредактировано Сергей - Пн, 03 Июня 2013, 10:18
Проверил работу... Все заменилось быстро и вроде нормально (проверил результат бегло), все заменилось на русские буквы в прищепке рабочий скрипт и результат (в файле h1.html) Запуск скрипта из файла командой
Так, давай тогда пойдем другим путем. В php есть функция html-entity-decode. Зачем тогда создавать велосипед? Как этот код записать?
А вообще в НБ можно сделать универсальную функцию для этого плагина? Допустим что бы можно было указать путь к файлу, переменным и т.д. Вставил путь к файлу если нужно, или указал переменные и получил результат в перемную или записал в файл если нужно....
Так не хочется вникать в этот PHP.
Мож после, когда нибудь, если не здоровый интерес к нему появится.
Добавлено (12 Августа 2013, 23:30) --------------------------------------------- Нужно удалить из текста все ссылки типа
tppabs="http://адрес любой длины/файл.расширение"
Эту сделал. Не знаю правильно или нет, но находит вроде все
Код
tppabs.*?\..*?"
Теперь засада в другом. Не могу справится с тегами <script></script>.
Сергей, ты тут? Ну или кто соображает.
Добавлено (02 Марта 2015, 02:13) --------------------------------------------- Есть возможность в hpwControl сделать регистронезависимый поиск? Допустим, мы хотим найти не только слово «кошка», но и «Кошка», «КоШкА» и «КОШКА».
Пробовал подставить модификатор \i, что то ничего не находит.
Сделал типа такого:
[К-к][О-о][Ш-ш][К-к][А-а]
Но мне надо найти возможный вариант из порядка 300 слов. И все 300 слов записывать таким образом как то не хочется. А придется если нет других вариантов.
Есть возможность в hpwControl сделать регистронезависимый поиск?
Где искать нужно? - А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
В текстовой строке, переменной... Список будет уже готовый.
Например создаешь базу, в нее пользователь добавляет новую таблицу или поле. Ему сначала предлагается ввести название таблицы или поля. То что введено, берется за основу для поиска в готовом списке. Это я все описал для команд нб, если делать штатными средствами.
Используя плагин, делается проверка регуляркой. В регулярку заносятся все возможные совпадения и проверяется введенная строка. Например вот такой код не даст ввести запрещенные символы или слова в имя создаваемой папки
.\\\\\\\\\\\\\\\Проверяем наличие точки\пробела. Не может быть в начале, в конце или единичным символом////////////// hpwExecRegExpBool "^\.+|^\.+$|\.+$|^\s+|^\s+$|\s+$" "[FileName]" "[Result]" While "[Result]" "=" "1" hpwReplaceRegExp "^\.|^\.$|\.$|^\s|^\s$|\s$" "[FileName]" "" "" "[FileName]" hpwExecRegExpBool "^\.+|^\.+$|\.+$|^\s+|^\s+$|\s+$" "[FileName]" "[Result]" If "[FileName]" "=" "" AlertBox "Внимание" "Имя не может состоять из пробелов и\или точек" GotoLine "1" EndIf EndWhile
Там где идет проверка на слова con, nul, prn, AUX, COM1, COM2...... схема построения регулярки как писал выше
[К-к][О-о][Ш-ш][К-к][А-а]
То есть проверяется существование каждой буквы в любом регистре. Например такая регулярка
^[C-c][O-o][M-m][1-9]$
Найдет только целое слово Com1, или CoM2, и т.д. Но не найдет CCOM1, COM1COM, и т.д.
В построении регулярки ввообще, есть модефикатор \i который указывает искать слово в любом регистре, но в этом плагине он почему то не работает, или я не правильно что то делаю.
Средства НБ даже не предлагай, лучше регулярки ничего придумать не возможно.
Если нет другого решения, то я создам список как выше. Просто подумал что может быть кто то уже сталкивался с этим. Не хочешь читать хелп?
Хотя, учитывая твои "объемы" (аппетиты), штатная команда с ума сойдет.
Цитатаmishem ()
Средства НБ даже не предлагай, лучше регулярки ничего придумать не возможно.
И как ты собирался в Delphi работать, если даже в NB лениво по клавишам чуток постучать?
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Да здесь не столько с ума сойдет штатная, сколько сам с ума сойдешь составлять условия. На данный момент около 300 зарезервированных слов. Даже если взять к примеру слово из 4 букв, то сколько вариантов может быть? мама, Мама, МАма, МАМа, МАМА, мАМА, маМА, мамА, МаМА, МамА, ну и т.д... Не хочешь читать хелп?
Я кажись уже показывал как организовать рекурсивный поиск в NB, когда считалось, что это невозможно? И даже по маске можно сделать. Порядка 30 строк кода на все про все. Это много?
Цитатаmishem ()
если взять к примеру слово из 4 букв, то сколько вариантов может быть? мама, Мама, МАма, МАМа, МАМА, мАМА, маМА, мамА, МаМА, МамА, ну и т.д...
Кстати, штатная SearchStr может искать как с учетом регистра, так и без. Потому этот аргумент отпадает.
В подобных случаях, я люблю приводить пример вот этой программы, сделанной на 99% на чистом коде ММВ и без единого плагина (применены кое-какие "левые" мелочи, не имеющие принципиального значения). А возможности ММВ, в целом, были заметно скромнее, чем у NB даже тогда.
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Да здесь не столько с ума сойдет штатная, сколько сам с ума сойдешь составлять условия. На данный момент около 300 зарезервированных слов. Даже если взять к примеру слово из 4 букв, то сколько вариантов может быть? мама, Мама, МАма, МАМа, МАМА, мАМА, маМА, мамА, МаМА, МамА, ну и т.д...
а что мешает перевести все символы проверяемой строки в нижний регистр и проверить?
Цитата
В построении регулярки вообще, есть модификатор \i который указывает искать слово в любом регистре, но в этом плагине он почему то не работает, или я не правильно что то делаю
мне кажется эта модификаторы могли быть предусмотрены в плагине и воспользоваться в выражениях ими уже не получится.
Сообщение отредактировано ponand - Пн, 02 Марта 2015, 19:58