Strict Standards: Resource ID#18 used as offset, casting to integer (18) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#23 used as offset, casting to integer (23) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#25 used as offset, casting to integer (25) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#26 used as offset, casting to integer (26) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401
ТвойWeb :: Регулярные выражения [2]
ТвойWeb ТвойWeb
Качественный Европейский хостинг
Форум для чайников
 Чат на форуме      Помощь      Поиск      Пользователи


 Страниц (3): « 1 [2] 3 » 

> Без описания
KROt
Отправлено: 30 Июня, 2008 - 11:14:09
Post Id



Java-скриптер


Покинул форум
Сообщений всего: 72
Дата рег-ции: Авг. 2006  

Карма 0




Не, ну почему сразу загнул... Вот нашёл на одном сайте, посвещённому Perl, такую строку:
Цитата:
\U...\Е — обозначает, что все символы в регулярном выражении между \U и \Е преобразуются к верхнему регистру;

Значит, такое возможно, но в JavaScript не работает, хотя, по идее, должно...
Ещё вот это видел - http://wdh.suncloud.ru/perl04.htm :
Цитата:
\u - Преобразует следующий символ в верхний регистр.

(Отредактировано автором: 30 Июня, 2008 - 11:18:46)

 
 Top
Systemnik Администратор
Отправлено: 30 Июня, 2008 - 11:35:33
Post Id



ExBB Developer Team


Покинул форум
Сообщений всего: 778
Дата рег-ции: Дек. 2007  

Карма 0




Ну а вот так:
CODE:
/simvol\\u/

CODE:
/simvol/u

что не работает?
Цитата:
Не, ну почему сразу загнул...

Я про то, что рег экспы слишком сложно для такой задачи только овот почему-то toUpperCase() не работает Огорчение
Цитата:
Значит, такое возможно, но в JavaScript не работает, хотя, по идее, должно...

ММ а есть два языка рег экспом один POSIX а другой PCRE новый последний а может то про что читал ты было про POSIX??

(Отредактировано автором: 30 Июня, 2008 - 11:37:51)

 
 Top
Systemnik Администратор
Отправлено: 30 Июня, 2008 - 11:39:50
Post Id



ExBB Developer Team


Покинул форум
Сообщений всего: 778
Дата рег-ции: Дек. 2007  

Карма 0




Кажется статья которую читаеш ты про POSIX.. А в
php например для POSIX
ereg() а для PCRE preg_match в JS наверно тоже какие-то разные функции должны быть...
 
 Top
Furax
Отправлено: 30 Июня, 2008 - 23:52:31
Post Id



Бледнотик


Покинул форум
Сообщений всего: 1472
Дата рег-ции: Март 2007  
Откуда: Иркутск, Сибирь, СССР

Карма 32




Systemnik
Да, в PHP есть Perl- и POSIX-выражения. Проблема у Тебя в том, что в Windows-кодировке новую строку означает не один символ '\n', а пара '\r\n'. Так что лучше сначала удалить все '\r', а потом спокойно работать с '\n':
CODE:
s = s.split('\r').join('').split('\n').join('Ваша реклама');


KROt
Зачем RegExpы для перевода? Это существенно неэффективна. Есть априори оптимизированный метод toUpperCase() - его и пользуй.
 
 Top
KROt
Отправлено: 01 Июля, 2008 - 06:52:17
Post Id



Java-скриптер


Покинул форум
Сообщений всего: 72
Дата рег-ции: Авг. 2006  

Карма 0




Ура, я кое-что нашёл! Ура!
Просто посмотрите на это:
CODE:
var primer = "border-top-color";
if(/[a-z]+\-+/.test(primer)) {
var str = primer.replace(/\-(\w)/g, function() {
return arguments[1].toUpperCase();
});
alert(str);
}

Я не понимаю как, но это работает Не понял

Furax пишет:
Это существенно неэффективна

Для сравнения, что я юзал раньше для того же эффекта:
CODE:
var primer = "border-top-color";
if(/[a-z]+\-+/.test(primer)) {
var m = primer.match(/[a-z]+/g);
var str = m[0];
for(var j = 1; j < m.length; j++) {
str += m[j].substr(0,1).toUpperCase() + m[j].substring(1,m[j].length);
}
alert(str);
}

Помойму куда эффективнее... А главное быстрее работает, нежели с использованием цикла Улыбка
 
 Top
Furax
Отправлено: 01 Июля, 2008 - 07:01:20
Post Id



Бледнотик


Покинул форум
Сообщений всего: 1472
Дата рег-ции: Март 2007  
Откуда: Иркутск, Сибирь, СССР

Карма 32




CODE:
str = primer.toUpperCase().
Остальное - от лукавого.
 
 Top
KROt
Отправлено: 01 Июля, 2008 - 07:04:06
Post Id



Java-скриптер


Покинул форум
Сообщений всего: 72
Дата рег-ции: Авг. 2006  

Карма 0




Furax
Так нужно было-то не всю строку в верхний регистр перевести, а только первую букву после каждого символа "-"...
 
 Top
Furax
Отправлено: 01 Июля, 2008 - 22:13:05
Post Id



Бледнотик


Покинул форум
Сообщений всего: 1472
Дата рег-ции: Март 2007  
Откуда: Иркутск, Сибирь, СССР

Карма 32




А для этого есть CSS-свойство text-transform.
 
 Top
KROt
Отправлено: 02 Июля, 2008 - 02:39:12
Post Id



Java-скриптер


Покинул форум
Сообщений всего: 72
Дата рег-ции: Авг. 2006  

Карма 0




Господи, Furax, нужно перевести это
CODE:
border-top-color
вот в это -
CODE:
borderTopColor
. Как ты предлагаешь использовать для этого css?!
Представь: нужно создать текстовый блок с этим css-стилем, запихнуть туда эту строку (причём опять же разобранную на составляющие, а для этого опять нужен массив и цикл), потом прочитать их оттуда, склеить, а уже потом выдать скрипту... Глазки в кучку
 
 Top
Furax
Отправлено: 02 Июля, 2008 - 04:56:08
Post Id



Бледнотик


Покинул форум
Сообщений всего: 1472
Дата рег-ции: Март 2007  
Откуда: Иркутск, Сибирь, СССР

Карма 32




KROt
А зачем куда-то что-то сливать? Почему уже по месту назначения не сделать как надо?
 
 Top
Страниц (3): « 1 [2] 3 »
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0, скрытых: 0)
« JavaScript »


Все гости форума могут просматривать этот раздел.
Только администраторы и модераторы могут создавать новые темы в этом разделе.
Только администраторы и модераторы могут отвечать на сообщения в этом разделе.



Форум на AlfaSpace.NET


Powered by ExBB
ExBB FM 1.0 RC1 by TvoyWeb.ru
InvisionExBB Style converted by Markus®

[Script Execution time: 0.0402]     [ Gzipped ]