Что ж, вы можете попробовать drupal_html_to_text , чтобы преобразовать фрагмент в простой текст.
Возможно, правильный путь - выяснить, почему эти результаты не конвертируются.Исходя из ваших комментариев, похоже, что проблема только в том, что вы ищете специально для «&».Точнее, это регулярное выражение в search.module (/modules/search/search.module - строка 1188 в 6):
preg_match_all('/ ("([^"]+)"|(?!OR)([^" ]+))/', ' '. $keys, $matches);
Соответствует только пробелам перед ключевым словом (не после).Вы можете изменить здесь ключи $ как:
if ($keys == '&') $keys = '&'
или что-то в этом роде (конечно, это означает взлом ядра - ме).
Вы также можете добавить form_alter через модуль иизменить форму поиска (см. эту ссылку на как добавить form_alter ).Затем вы можете добавить собственный обработчик отправки , который изменит поисковый термин в форме перед его отправкой.