Как заменить подстроку в найденном шаблоне, но оставив все остальное как есть?
(РЕДАКТИРОВАТЬ: реальный случай, конечно, сложнее, чем в примере ниже, я должен сопоставить вхождения в тегах xml. Вот почему я должен использовать регулярное выражение!)
Допустим, я хочу изменить вхождения слова "X" в слове на букву "Z".
хочу
aaXaa aaX Xaa
стать
aaZaa aaZ Zaa
Поиск вхождений слов, включая "x", не проблема, например:
[^ X \ s] X [^ \ s]
но обычное preg_match заменяет полное совпадение, где я хочу, чтобы в шаблоне было что-нибудь, кроме «X», чтобы оно оставалось таким, как есть.
Какой лучший способ сделать это в php?