### Elasticsearch Version

8.8.1

### Installed Plugins

_No response_

### Java Version

_bundled_

### OS Version

Linux 5de0ae774a6f 5.10.102.1-microsoft-standard-WSL2

### Problem Description

In older versions of ES (v7.12.0 specifically), using wildcard field names in a `simple_query_string` would work properly in a percolator field. From at least version 8.7.0 and later, the wildcard expansion no longer works. Please note, fieldname wildcard expansion does seem to work properly for normal queries, just not percolated ones. See example below.

### Here is an example of it working correctly on ES v7.12.0

https://github.com/elastic/elasticsearch/assets/550842/f1022961-d5b7-4314-9e5d-c2469d323f44


### Here is an example of it not working on ES v8.8.1

https://github.com/elastic/elasticsearch/assets/550842/0f310161-c267-4b09-b530-f0a6ba0eefe5

In the example above, both `test-without-wildcard-field` and `test-with-wildcard-field` should be returned. 



### Steps to Reproduce

```
# Create index with percolator and field for various text values
PUT perc_test
{
  "mappings": {
    "properties": {
      "query": {
        "type": "percolator"
      },
      "texts": {
        "dynamic": false,
        "properties": {
          "about": {
            "type": "text"
          },
          "description": {
            "type": "text"
          }
        }
      }
    }
  }
}

# Add doc with simple_query_string percolator using a wildcard for field names
POST perc_test/_doc/test-with-wildcard-field
{
  "query": {
    "simple_query_string": {
      "fields": [
        "texts.*"
      ],
      "query": "yada"
    }
  }
}

# Add another doc with simple_query_string percolator using explicit field names
POST perc_test/_doc/test-without-wildcard-field
{
  "query": {
    "simple_query_string": {
      "fields": [
        "texts.description"
      ],
      "query": "yada"
    }
  }
}

# Percolate document. The expectation is that it will match both docs above
POST perc_test/_search
{
  "size": 10000,
  "query": {
    "percolate": {
      "field": "query",
      "document": {
        "texts": {
          "description": "yada"
        }
      }
    }
  }
}
```

Expected results:  `test-without-wildcard-field` and `test-with-wildcard-field` should be returned by the `_search` query

### Logs (if relevant)

_No response_
modules/percolator/src/internalClusterTest/java/org/elasticsearch/percolator/PercolatorQuerySearchIT.java
assertThat(item.getFailureMessage(), notNullValue());
        assertThat(item.getFailureMessage(), containsString("[test/6] couldn't be found"));
    }
    public void testDisallowExpensiveQueries() throws IOException {
        try {
            assertAcked(
                indicesAdmin().prepareCreate("test").setMapping("id", "type=keyword", "field1", "type=keyword", "query", "type=percolator")
            );
            client().prepareIndex("test")
                .setId("1")
                .setSource(jsonBuilder().startObject().field("id", "1").field("query", matchQuery("field1", "value")).endObject())
                .get();
            refresh();
            
            BytesReference source = BytesReference.bytes(jsonBuilder().startObject().field("field1", "value").endObject());
            SearchResponse response = client().prepareSearch()
                .setQuery(new PercolateQueryBuilder("query", source, XContentType.JSON))
                .get();
            assertHitCount(response, 1);
            assertThat(response.getHits().getAt(0).getId(), equalTo("1"));
            assertThat(response.getHits().getAt(0).getFields().get("_percolator_document_slot").getValue(), equalTo(0));
            
            updateClusterSettings(Settings.builder().put("search.allow_expensive_queries", false));
            ElasticsearchException e = expectThrows(
                ElasticsearchException.class,
                () -> client().prepareSearch().setQuery(new PercolateQueryBuilder("query", source, XContentType.JSON)).get()
            );
            assertEquals(
                "[percolate] queries cannot be executed when 'search.allow_expensive_queries' is set to false.",
                e.getCause().getMessage()