Регулярные выражения двойные кавычки

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

ключевые слова поступают из сообщения формы

4 ответов

вы просто замените ‘ С " и удалите литерал, чтобы восстановить его должным образом.

то же самое, но с двойными кавычками вместо одинарных кавычек. Двойные кавычки не являются особенными в шаблоне regex. Но я обычно добавляю что-то, чтобы убедиться, что я не охватываю несколько цитируемых строк в одном матче, и разместить двойные двойные кавычки:

Я довольно хорошо знаком с PHP, но я новичок с регулярными выражениями в PHP. Я пытаюсь выяснить, как разрешить только a-z, A-Z, 0-9. ‘(одинарная кавычка), «» (двойная кавычка), +, -. (Запятая), &, !, *, (, а также ).

Я нашел несколько рабочих примеров того, что я ищу, за исключением того, как разрешить одинарные и двойные кавычки.

Пример того, что я ищу:
Здравствуйте, это всего лишь пример того, что я ищу: «Hello World!».

Я пытаюсь проверить текстовую область $ _POST [‘подсказка’], используя:

Со всем, что я пробовал, я всегда получаю:

Пример того, что я ищу: Привет, это всего лишь пример того, что я ищу: «Hello Wolrd! ».

Я не понимаю, почему перед кавычками?

Решение

Вы можете использовать следующее регулярное выражение:

Обратите внимание, что дефис — помещается в конечную позицию, чтобы не образовывать диапазон (и он может соответствовать литералу — ). + , * , . , ( а также ) не нужно экранировать внутри класса персонажа. В общем-то, ^-] следует избегать, но если они появляются в начале конечной позиции в классе персонажа, они не должны. необходимо экранировать в классе персонажа, но вы не разрешаете это.

Читайте также  Почему в наушниках работает только одно ухо

Кроме того, если вы хотите сопоставить куски разрешенных символов, добавьте + квантификатор после класса персонажа: [a-zA-Z0-9:’"+.,&!*()-]+ ,

Пример кода PHP:

РЕДАКТИРОВАТЬ:

Поскольку вы обновили вопрос, вот информация для отключения экранирования двойных кавычек в более ранних версиях PHP. В качестве одного из вариантов, вы можете перейти к .Htaccess файл и набор php_flag magic_quotes_gpc Off ,

У меня есть строка.

Для запись в базу данных мне надо ее привести к виду.

Я сделаю регулярное выражение.

Проблема в том что он заменяет все кавычки.

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

Ссылка на основную публикацию
Adblock
detector