почему не проверяешь на соответствие стандарту и поддерживаемым запросам?
не понял смысла (.*[^\s+]) - почему не (\S+) ?