Манипулирование строкой для удаления токенов из строки и присвоения результата переменной? - PullRequest
0 голосов
/ 25 марта 2011

Учитывая строковую переменную в $ widget_text ...

$widget_text = '[widget_and-some-text]';

Мне нужно выполнить манипуляции со строками, чтобы в итоге ...

$widget_text_sanitized = 'and-some-text';

Как?

т.е. я думал, что это должно работать:

$widget_text = trim($widget_text,'[]');
$widget_text_sanitized = str_replace('widget_','',$widget_text);

Ответы [ 2 ]

2 голосов
/ 25 марта 2011

Используя регулярное выражение, вы можете получить что-то вроде этого:

$widget_text = '[widget_and-some-text]';

if (preg_match('/\[widget_([^\]]+)\]/', $widget_text, $matches)) {
    var_dump($matches[1]);
}

Что даст вам:

string 'and-some-text' (length=13)
0 голосов
/ 25 марта 2011
$widget_text_sanitised = substr($widget_text, 8, -1);

Это удалит первые 8 и последний символ из строки (независимо от того, какие это символы).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...