powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Паттерн на PHP
6 сообщений из 6, страница 1 из 1
Паттерн на PHP
    #38600742
Фотография Andrew_nik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть паттерн на .NET для извлечения символов между одинарными кавычками
Код: c#
1.
'(?:\\'|[^'])*'


Пробовал так, но не работает:
Код: php
1.
/(?P<sd>(?<=')(?:\\')|(?:[^'])*(?='))/i

где sd - именованная группа

Подскажите как перевести его на PHP?
...
Рейтинг: 0 / 0
Паттерн на PHP
    #38600769
Фотография r u
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andrew_nik,

да также все
$pattern = "/'(?:\\'|[^'])*'/";
...
Рейтинг: 0 / 0
Паттерн на PHP
    #38600802
Фотография Andrew_nik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: php
1.
2.
3.
4.
5.
6.
$str = "makename = 'BMW' AND yearid = '19\'83' and dfd IN ('df', '211')";
    $pattern = "/'(?:\\'|[^'])*'/i";
    
    preg_match_all($pattern, $str, $matches);
    var_dump($matches);
    exit();



Результат:
...
Рейтинг: 0 / 0
Паттерн на PHP
    #38600807
Фотография Andrew_nik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А должно быть что-то вроде этого:
...
Рейтинг: 0 / 0
Паттерн на PHP
    #38600852
Фотография r u
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andrew_nik,

а ну ясно. просто в php регулярки жадные. поэтому нужно в вашем случае жадность уменьшить:
Код: php
1.
$pattern = "/'(?:\\\'|[^'])*?'/i";
...
Рейтинг: 0 / 0
Паттерн на PHP
    #38600881
Фотография Andrew_nik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Паттерн на PHP
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]