У меня есть следующая строка:
ОТКРЫТО кто-то сказал привет ЗАКРЫТЬ я говорю привет людям ОТКРЫТЬ некоторые сказали привет ОТКРЫТЬ они снова поздоровались ЗАКРЫТЬ Мне нужно идти сейчас, хотя ЗАКРЫТЬ Привет еще раз!
Я пытаюсь сопоставить все случаииз привет (которые не заключены в слова OPEN и CLOSE ) и замените их другим словом, возможно, с помощью регулярного выражения и функции PHP preg_replace
(хотя я открыт для других методов, так как не могу придумать ни одного).
Так что из приведенной выше строки будет соответствовать нижеследующее (я поместил их в скобки с курсивом, чтобы помочь вам отличить их):
ОТКРЫТО кто-то сказал привет ЗАКРЫТЬ я говорю ( привет ) люди ОТКРЫТЬ некоторые сказали привет ОТКРЫТЬ они снова поздоровались ЗАКРЫТЬ мне нужно идти сейчас, хотя ЗАКРЫТЬ ( привет ) снова!
Не совсемsКак это сделать.
Редактируйте, возможно, это лучше прояснит структуру вложенности:
OPEN
text
CLOSE
OPEN
text
OPEN
text
CLOSE
text
CLOSE
Как вы можете видеть сверху, привет не замечается, потому что его внутриОТКРЫТЬ ... ЗАКРЫТЬ (поэтому они игнорируются), тогда как остальные, которые не будут заменены.