Еще одна идея:
Dim input As String = "Hello there. My name is John. I work very hard. Hello there!"
Dim phrase As String = "Hello there"
Dim Occurrences As Integer = (input.Length - input.Replace(phrase, String.Empty).Length) / phrase.Length
Вам просто нужно убедиться, что phrase.Length > 0
.
Это не совсем ответ на ваш вопрос, но... смените хостинг-провайдера! Есть очень дешевые хостинги с доступом к shell, и я клянусь, что запустить Python сайт без доступа к shell практически невозможно.
Кроме того, компиляция библиотеки Python (я предполагаю, что она имеет некоторые привязки к C, иначе компилировать нечего) на вашем локальном компьютере и загрузка ее на удаленный сервер без доступа к shell может оказаться кошмаром, из-за некоторых отсутствующих зависимостей, конфликтующих версий других библиотек и т.д.
И последнее, но не менее важное: инструменты типа Fabric - ваши друзья при развертывании на удаленных серверах, и без доступа к оболочке вы либо не сможете их использовать, либо будете страдать (например: У меня есть скрипт, который коммитит и отправляет локальные изменения в репозиторий Mercurial на удаленном сервере, обновляет его там и перезапускает это приложение на сервере - как бы вы сделали это с доступом только по FTP :) ?)..