Dealing with the plus sign (+) character in Indexing/Searching

Hm, I just tried mapping from your first post, and all seems to be ok.

DELETE /sample

PUT /sample
{
  "settings": {
    "analysis": {
      "filter": {
        "my_delimiter": {
          "type": "word_delimiter",
          "type_table": [
            "# => ALPHANUM",
            "+ => ALPHANUM"
          ]
        }
      },
      "analyzer": {
        "my_analyzer": {
          "tokenizer": "whitespace",
          "filter": ["lowercase", "my_delimiter"]
        }
      }
    }
  },
  "mappings": {
    "product": {
      "properties": {
        "title": {
          "type": "string",
          "analyzer": "my_analyzer"
        }
      }
    }
  }
}

POST /sample/product/1
{
  "title": "Programming C++"
}

POST /sample/product/2
{
  "title": "Programming C#"
}

POST /sample/_search
{
  "query": {
    "multi_match": {
      "query": "c++",
      "fields": ["title"]
    }
  }
}