Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
 
Фильтр авторов:    показать 
  скрыть
  Ответ в темуСоздание новой темыСоздание опроса

> Написать красивое и быстрое регулярное выражение, Переписать моё регулярное выражение, сделав его лучше
Kumena  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 28
Пользователь №: 32581
На форуме: 12 лет, 11 месяцев, 15 дней
Карма:




Доброго дня!

Мне требуется переписать мое существующее регулярное выражение для определения character set из META-тагов веб-страницы.

У меня есть две проверки - для одинарных и двойных кавчек:

preg_match( '@<meta\s+http-equiv="Content-Type"\s+content="([\w/]+)(;\s+charset=([^\s"]+))?@i', $content, $matches );

if (!empty($matches[3])) {
$encoding = strtolower(trim(str_replace(";","",$matches[3])));
}
else {
preg_match( '@<meta\s+http-equiv=\'Content-Type\'\s+content=\'([\w/]+)(;\s+charset=([^\s\']+))?@i', $content, $matches );
$encoding = strtolower(trim(str_replace(";","",$matches[3])));
}


Проблема в том, что порядок следования параметров на своих страницах ($content) веб-мастера меняют как захочется. И в случае, например:

"<meta content="text/html; charset=windows-1251" http-equiv="Content-Type">"
вышеуказанная регулярка не работает.

Мне нужно:
Переписать эту регулярку таким образом чтобы обеспечить максимальную универсальность при таких переменах мест параметров в мета-теге. Также важна скорость её работы, т.к. код работает в весьма высоко нагруженном процессе.

Имею на это дело бюджета долларов 10 (WebMoney?) и дня два времени.

Люди добрые, помогите кто чем может (с) :)
PMПисьмо на e-mail пользователюСайт пользователя
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Invis1ble  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме




******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 12174
Пользователь №: 23195
На форуме: 14 лет, 9 месяцев, 21 день
Карма: 441

Трезвый :
15 лет, 8 месяцев, 21 день


Kumena
у меня есть готовое рабочее решение, пиши в ПМ


--------------------
PMПисьмо на e-mail пользователюСайт пользователя
    1   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Kumena  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 28
Пользователь №: 32581
На форуме: 12 лет, 11 месяцев, 15 дней
Карма:




С помощью Invis1ble вопрос решен. Спасибо!
PMПисьмо на e-mail пользователюСайт пользователя
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Игорь_Vasinsky  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Журнал
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 26774
Пользователь №: 21350
На форуме: 15 лет, 2 месяца, 1 день
Карма: 756




нормальная цена? biggrin.gif

а html5 войдёт в моду - оба твоих паттерна в печь)


--------------------
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
PM
    -1   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
killer8080  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 9631
Пользователь №: 26630
На форуме: 14 лет, 2 месяца, 13 дней
Карма: 664




Цитата (Игорь_Vasinsky @ 9.10.2012 - 14:30)
а html5 войдёт в моду - оба твоих паттерна в печь)

можно сделать универсальный вариант wink.gif
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Invis1ble  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме




******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 12174
Пользователь №: 23195
На форуме: 14 лет, 9 месяцев, 21 день
Карма: 441

Трезвый :
15 лет, 8 месяцев, 21 день


Мое решение охватывает и html5 wink.gif


--------------------
PMПисьмо на e-mail пользователюСайт пользователя
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Игорь_Vasinsky  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Журнал
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 26774
Пользователь №: 21350
На форуме: 15 лет, 2 месяца, 1 день
Карма: 756




Kumena
ты чё дурачёк? laugh.gif ты че минусуешь - я те по делу написал.

почитай мануалы.


--------------------
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
PM
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
loader  
Дата
Цитировать сообщение


Гость пожелал остаться неизвестным

Unregistered









Народ нужно универсальное регулярное выражение для

<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta charset="utf-8" />
<meta charset="utf-8">

помогите?
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Zzepish  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 5978
Пользователь №: 32538
На форуме: 12 лет, 11 месяцев, 19 дней
Карма: 67




loader
preg_match_all('/<meta[^>]+>/',$str,$result)
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
twin  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Глухой нуб
******

Профиль
Группа: Администратор
Почтальон группы
Сообщений: 17423
Пользователь №: 6543
На форуме: 16 лет, 7 месяцев, 12 дней
Карма: 327

Трезвый :
14 лет, 4 месяца, 21 день


Zzepish
ой...
get_meta_tags


--------------------
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
PMСайт пользователяICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Zzepish  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 5978
Пользователь №: 32538
На форуме: 12 лет, 11 месяцев, 19 дней
Карма: 67




twin
там, как я подозреваю, тоже регулярка (в самой функции)))))
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
  Быстрый ответ
Информация о Госте
Введите Ваше имя
Кнопки кодов
Для вставки цитаты, выделите нужный текст и
НАЖМИТЕ СЮДА
Введите сообщение
Смайлики
:huh:  :o  ;) 
:P  :D  :lol: 
B)  :rolleyes:  <_< 
:)  :angry:  :( 
:unsure:  :blink:  :ph34r: 
     
Показать всё

Опции сообщения  Включить смайлики?
 Включить подпись?
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темы Ответ в темуСоздание новой темыСоздание опроса