![]() |
|
Модераторы: Sardar, Aliance |
![]()
|
|
| ravana |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 24.12.2007 Где: Rostov Репутация: нет Всего: нет |
Помогите, плиз, составить регулярное выражение:
Удвоить вхождения каждого четного слова Очень надо, а я в региксах совсем не понимаю.. |
|||
|
||||
| SelenIT |
|
|||
![]() баг форума ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3996 Регистрация: 17.10.2006 Где: Pale Blue Dot Репутация: 7 Всего: 401 |
Если словом считать сплошную последовательность непробельных символов, а разделителем слов - один или больше пробельных, то как-то так:
Ловим первое слово вместе с разделителем в один "карман" (пару скобок), следующее за ним слово во второй, при замене второй карман вставляем дважды. Затем аналогично поступаем со следующей парой слов, и так далее по всему тексту (/g - флаг глобального поиска). -------------------- Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму! |
|||
|
||||
| ravana |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 24.12.2007 Где: Rostov Репутация: нет Всего: нет |
Спасибо большое! =))
Добавлено через 4 минуты и 58 секунд Ой, а можно еще вопрос? Что делают следующие региксы? 1) /.{80,}/ 2) /(\w+)\s*=\s*(.*)\s*$/ 3) /(d+\.?\d*)/g 4) /(\b[^\WA-Z0-9_]+\b)/g 5) /(\b[^\Wa-z0-9_][^\WA-Z0-9_]*\b)/ 6) /^m*(d?c{0,3}|c[dm])(l?x{0,3}|x[lc])(v?i{0,3}|i[vx])$/i |
|||
|
||||
| SelenIT |
|
|||
![]() баг форума ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3996 Регистрация: 17.10.2006 Где: Pale Blue Dot Репутация: 7 Всего: 401 |
1) Не менее 80 любых символов.
2) Слово (в слово могут входить лат. буквы, цифры и подчеркивание), за ним знак равенства (возможно, окруженный пробелами) и что угодно до последнего пробела (типа параметр конфигурации и его значение) 3) Как минимум одна цифра, за которой, возможно, следуют точка и еще цифры (т.е. типа целое либо дробное число) 4) Слово, состоящее только из маленьких лат. букв. \b обозначает границу слова, ^ в начале квадратных скобок означает "что угодно кроме перечисленного", а перечислены любые символы кроме лат. букв, цифр и подчеркивания (\W), большие буквы (A-Z), цифры и подчеркивание - остались только маленькие буквы 5) Слово, имеющее 1 большую букву в начале и от нуля до бесконечности (*) маленьких лат. букв (см. п. 4). Тоже можно написать короче - /(\b[A-Z][a-z]*\b)/ 6) Строка, начинающаяся (^ вне квадр. скобок) любым кол-вом (от нуля) букв m, затем идут либо (скобки с | означают альтернативу) 0 или одна буква d, за которой следуют от 0 до трех букв c (т.е. d, dc, dсс, ссс и т.п.), либо буква c, а за ней - одна из букв d или m (т.е. cd или cm). Дальше - по аналогии - могут идти l, x, lxxx и т.п. - либо xl или xc. А потом, соответственно, viii, vi, ii... - либо iv, ix. На этом строка должна закончиться ($). Регистр букв не учитывается (флаг i в самом конце). -------------------- Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму! |
|||
|
||||
| ravana |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 24.12.2007 Где: Rostov Репутация: нет Всего: нет |
SelenIT
Огромное спасибо за помощь! =) |
|||
|
||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 44 Всего: 315 |
чёрт возьми, где бы так научиться делать регулярки
да знаю, иди читать аглицкий материал... |
|||
|
||||
| PblCb |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 29.5.2008 Репутация: нет Всего: нет |
Помогите пожалуйста сделать регулярные выражения для 3 заданий:
1) Идентификатор в языке Паскаль (Проверка на наличие, на полное совпадение, выделение всех) 2) Удаление лишних пробелов (Оставить только по одному между словами) 3) Удаление пути из полного имени файла. Выделение пути из полного имени файла очень надо, помогите пожжжжжж!!!!!!!!!!! |
|||
|
||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 44 Всего: 315 |
PblCb, а на форум по паскалю не пробовал обращаться?
|
|||
|
||||
| SelenIT |
|
|||
![]() баг форума ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3996 Регистрация: 17.10.2006 Где: Pale Blue Dot Репутация: 7 Всего: 401 |
bars80080, моя телепательная машинка подсказывает, что человеку нужно что-то типа редактора Паскаля (с подсветкой) на яваскрипте.
-------------------- Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму! |
|||
|
||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 44 Всего: 315 |
вах!
у меня есть редактор с подсветкой синтаксиса javascript и pascal, но сомневаюсь что они работают вместе |
|||
|
||||
| PblCb |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 29.5.2008 Репутация: нет Всего: нет |
нет нет, именно регулярными надо. т.е. если слово var procedure function begin или end то вернуть его (их)
|
|||
|
||||
| PblCb |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 29.5.2008 Репутация: нет Всего: нет |
ну хотя бы другие два задания помогите!!!!
|
|||
|
||||
| Nexis |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 31.5.2008 Репутация: нет Всего: нет |
Здравствуйте уважаемые.
Подскажите, как пропарсить в отдельные переменные, аттрибуты (title, file)? из текста вида:
С регэкспами никак не могу подружиться, к моему сожалению. |
|||
|
||||
| SelenIT |
|
|||
![]() баг форума ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3996 Регистрация: 17.10.2006 Где: Pale Blue Dot Репутация: 7 Всего: 401 |
Nexis, это парсинг AJAX-ответа? А зачем делать это регулярками? Почему бы не использовать нативные XML-методы (getAttribute и т.п.)?
-------------------- Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму! |
|||
|
||||
| Nexis |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 31.5.2008 Репутация: нет Всего: нет |
SelenIT, это не AJAX-ответ.
Если описывать более детально, то, есть некое flash-приложение, которое подгружает в себя playlist. Выдача playlist`ов производится php-скриптом на сервере. Ответ выглядит в указанном выше формате "<song artist=........." И как использовать getAttribute, если на входе имеем фактически набор текста, не сильно связанный с DOM? А мне хотелось бы аккуратно выдирать из этого ответа переменные. Кроме как через regexp`ы мне кажется это сделать не очень реально. Или есть другие варианты? /upd Вопрос отпал. Догадка по поводу XML-ответа была верной. Я полученный ответ "доработал" до привычного xml-вида, и прекрасно пропарсил через DOMParser(). Это сообщение отредактировал(а) Nexis - 31.5.2008, 15:50 |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | JavaScript: для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |