Извлечение текста из кавычек в PHP - PullRequest
0 голосов
/ 20 марта 2012

У меня есть страница PHP, которая получает текст из внешнего источника, заключенный в кавычки. Как мне их снять?
Например:

input: "This is a text"
output: This is a text

Пожалуйста, ответьте с полным PHP-кодированием, а не просто с помощью регулярного выражения ...

Ответы [ 3 ]

5 голосов
/ 20 марта 2012

Это будет работать очень хорошо, если у вас нет строк с несколькими кавычками, такими как """hello""" в качестве входных данных, и вы хотите сохранить все, кроме самых внешних " 's:

$output = trim($input, '"');

trim удаляет все определенные символы из начала и конца строки в списке символов, который передается в качестве второго аргумента (в данном случае просто ").Если вы не передадите второй аргумент, он удалит пробел.

Если ситуация с несколькими начальными и конечными кавычками является проблемой, которую вы можете использовать:

$output = preg_replace('/^"|"$/', '', $input);

, которая заменяет только одну начальную или конечную кавычку пустой строкой, например:

""This is a text"" становится "This is a text"

1 голос
/ 20 марта 2012
$output = str_replace('"', '', $input);

Конечно, это удалит все кавычки, даже из строк. Это то, что вы хотите? Сколько там таких строк?

0 голосов
/ 20 марта 2012

Вопрос был в том, как сделать это с помощью регулярного выражения (возможно, для любопытства / в целях обучения).

Вот как вы это сделаете в php:

$result = preg_replace('/(")(.*?)(")/i', '$2', $subject);

Надеюсь, это поможет, Бакли

...