Я пытаюсь заменить ~
на |
между [
]
в следующем случае:
{stackoverflow is a [cool~great~fast] website ~ Find your answers [easily~quickly] on stackoverflow}.
Примечание: текст между [
]
может быть многострочным.
Я пробовал несколько регулярных выражений, но безуспешно.
Мой самый близкий вызов на данный момент:
$text = preg_replace("/\[(.*?)~(.*?)\]/i", "[$1|$2]", $text);
Но это возвращает
{stackoverflow is a [cool~great|fast] website ~ Find your answers [easily|quickly] on stackoverflow}.