У меня есть строка вроде: He *is*
хороший мальчик. Как *are*
вы. Затем я хочу заменить и с типом ввода текстовое поле означает замену вещей между звездочками (*). Как я могу получить это, пожалуйста, помогите мне.Заменить строку между двумя символами (специальный символ) в php
ответ
<?php
$buffer = 'He *is* a good boy. How *are* you.';
echo "Before: $buffer<br />";
$buffer = preg_replace_callback('/(\*(.*?)\*)/s', 'compute_replacement', $buffer);
echo "After: $buffer<br />";
function compute_replacement($groups) {
// $groups[1]: *item*
// $groups[2]: item
return '<input type="text" value="'.$groups[2].'" />';
}
?>
Результат:
Работает отлично. Спасибо друг. Но preg_replace_callback эта функция не работает в моем файле, который я заменяю preg_replace. –
Это меня удивляет - функция _preg \ _replace \ _callback_ существует со времен PHP версии 4. Но я рад, что вы нашли решение, которое работает на вас. – hherger
попробовать это,
<?php
$x="hai, *was/is* are you, is this *was* test ";
echo preg_replace("/\*[\w\/]*\*/","",$x);
?>
В моем вопросе есть и есть пример. Я хочу заменить строку между asterix. @rogin thomas –
Я отредактировал его. вы можете попробовать это –
Он заменяет только один. –
Использование preg_replace()
; например:
<?php
$pattern = '/\*\w+\*/';
$string = 'he *is* a good boy';
$replacement = 'was';
echo preg_replace($pattern, $replacement, $string);
Урожайность:
он был хорошим мальчиком
Упрощенный для использования шаблона, который будет соответствовать любому типу между звездочками! – Math
Если он * является хорошим мальчиком, он не будет работать. @Darragh Enright –
Try таким образом:
$txt = "He *is* a good boy. How *are* you.";
$_GET['one'] = "doesn't";
$_GET['two'] = "think about";
preg_match_all('{\*[^*]+\*}',$txt,$matches);
$txt = str_replace($matches[0][0], $_GET['one'], $txt);
$txt = str_replace($matches[0][1], $_GET['two'], $txt);
echo $txt;
или с preg_replace
, таким образом:
$txt = preg_replace
(
'/^(.*)\*[^*]+\*(.*)\*[^*]+\*(.*)$/', # <-- (Edited)
"\\1{$_GET[one]}\\2{$_GET[two]}\\3",
$txt
);
- 1. Как заменить символ между двумя символами?
- 2. php preg_replace regex заменить символ между двумя символами строки
- 3. заменить строку, содержащуюся между двумя символами
- 4. Заменить все между двумя символами
- 5. Как найти строку между двумя символами «/» - php
- 6. PHP, как получить строку между двумя символами?
- 7. php Выберите длинную строку между двумя символами
- 8. Java строку заменить пробельные между двумя различными специальными символами
- 9. Извлечение строки между двумя символами
- 10. Как заменить строку между двумя символами в Sublime
- 11. Regex.Replace - Заменить строку между двумя символами в многострочном сценарии
- 12. Как заменить строку между двумя символами в javascript?
- 13. Разбивает строку между двумя символами
- 14. Удалить строку между двумя символами
- 15. Получить строку между двумя символами
- 16. Разделить строку между двумя символами?
- 17. Заменить специальный символ в строке
- 18. Javascript заменить середину строки между двумя символами
- 19. Заменить специальный символ из строки в PHP
- 20. Regex заменить специальный символ в PHP?
- 21. Заменить символ между двумя словами
- 22. Как заменить специальный символ?
- 23. Есть ли функция PHP, чтобы вытащить строку между двумя символами?
- 24. Поместите кому между двумя символами
- 25. asp.net заменить специальный символ «\»
- 26. Java - Заменить специальный символ "/"
- 27. Получить строку между двумя специальными символами
- 28. заменить текстовые строки между двумя символами
- 29. Регулярное выражение: один символ между двумя символами
- 30. PHP MySQL специальный символ
Этот вопрос не показывает каких-либо исследовательских усилий. -1 – akasummer
У меня меньше знаний о preg_replace. –
Уважаемый путник, позвольте мне, почему вы меняете вниз. –