Задать вопрос
@Yadalay
Php, Mysql, Html, Css, Js/Jquery/Ajax, Laravel

Как все виды кавычек заменить на «…»?

Здравствуйте!
Подскажите, пожалуйста, регулярку, которая будет приводить любые кавычки (", ', `, „, “, ’) к виду «…» при условии, что есть открывающая и закрывающая (по логике) кавычка. Также предусмотреть ситуацию, если кавычки находятся в кавычках.
  • Вопрос задан
  • 1049 просмотров
Подписаться 3 Средний 6 комментариев
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Исключительно для корректно написанного текста на русском языке можно так.
Заменить все кавычки, перед которыми стоит пробел или начало строки на открывающие "лапки":
$text = preg_replace('/(?<=^|\s)["\'`„“’]/u', '«', $text);

Заменить все оставшиеся кавычки на закрывающие "лапки":
$text = preg_replace('/["\'`„“’]/u', '»', $text);
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
samodum
@samodum
Какой вопрос - такой и ответ
Регулярками это не решить. Нужно писать свою функцию на основе стека LIFO
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽