hibernateSearch搜索不到带空格的内容

hibernateSearch搜索时,对不带空格的内容可以检索,而带了空格的就匹配不上了,以下是搜索相关代码,求大神帮忙

FullTextEntityManager fullTextEntityManager = Search.getFullTextEntityManager(entityManager);
        QueryBuilder queryBuilder = fullTextEntityManager.getSearchFactory().buildQueryBuilder().forEntity(Product.class).get();

        Query snPhraseQuery = queryBuilder.phrase().onField("sn").sentence(keyword).createQuery();
        Query introductionPhraseQuery = queryBuilder.phrase().withSlop(3).onField("introduction").sentence(keyword).createQuery();
        Query isMarketablePhraseQuery = queryBuilder.phrase().onField("isMarketable").sentence("true").createQuery();
        Query isListPhraseQuery = queryBuilder.phrase().onField("isList").sentence("true").createQuery();
        Query isActivePhraseQuery = queryBuilder.phrase().onField("isActive").sentence("true").createQuery();

        BooleanJunction<?> junction = queryBuilder.bool().must(isMarketablePhraseQuery).must(isListPhraseQuery).must(isActivePhraseQuery);
        BooleanJunction<?> subJunction = queryBuilder.bool().should(snPhraseQuery).should(introductionPhraseQuery);
        Query namePhraseQuery = queryBuilder.keyword().wildcard().onField("name").matching(keyword).createQuery();
        Query keywordFuzzyQuery = queryBuilder.keyword().wildcard().onField("keyword").matching(keyword).createQuery();
        subJunction.should(namePhraseQuery).should(keywordFuzzyQuery);
        junction.must(subJunction.createQuery());

        if (type != null) {
            Query typePhraseQuery = queryBuilder.phrase().onField("type").sentence(String.valueOf(type)).createQuery();
            junction.must(typePhraseQuery);
        }
        if (storeType != null) {
            Query storeTypePhraseQuery = queryBuilder.phrase().onField("store.type").sentence(String.valueOf(storeType)).createQuery();
            junction.must(storeTypePhraseQuery);
        }
        if (store != null) {
            Query storePhraseQuery = queryBuilder.phrase().onField("store.id").sentence(String.valueOf(store.getId())).createQuery();
            junction.must(storePhraseQuery);
        }
        if (isOutOfStock != null) {
            Query isOutOfStockPhraseQuery = queryBuilder.phrase().onField("skus.isOutOfStock").sentence(String.valueOf(isOutOfStock)).createQuery();
            junction.must(isOutOfStockPhraseQuery);
        }
        if (isStockAlert != null) {
            Query isStockAlertPhraseQuery = queryBuilder.phrase().onField("skus.isStockAlert").sentence(String.valueOf(isStockAlert)).createQuery();
            junction.must(isStockAlertPhraseQuery);
        }
        if (startPrice != null && endPrice != null) {
            Query priceRangeQuery = queryBuilder.range().onField("price").from(startPrice.doubleValue()).to(endPrice.doubleValue()).createQuery();
            junction.must(priceRangeQuery);
        } else if (startPrice != null) {
            Query priceRangeQuery = queryBuilder.range().onField("price").above(startPrice.doubleValue()).createQuery();
            junction.must(priceRangeQuery);
        } else if (endPrice != null) {
            Query priceRangeQuery = queryBuilder.range().onField("price").below(endPrice.doubleValue()).createQuery();
            junction.must(priceRangeQuery);
        }
        FullTextQuery fullTextQuery = fullTextEntityManager.createFullTextQuery(junction.createQuery(), Product.class);

        SortField[] sortFields = null;
        if (orderType != null) {
            switch (orderType) {
            case TOP_DESC:
                sortFields = new SortField[] { new SortField("isTop", SortField.Type.STRING, true), new SortField(null, SortField.Type.SCORE), new SortField("createdDate", SortField.Type.LONG, true) };
                break;
            case PRICE_ASC:
                sortFields = new SortField[] { new SortField("price", SortField.Type.DOUBLE, false), new SortField("createdDate", SortField.Type.LONG, true) };
                break;
            case PRICE_DESC:
                sortFields = new SortField[] { new SortField("price", SortField.Type.DOUBLE, true), new SortField("createdDate", SortField.Type.LONG, true) };
                break;
            case SALES_DESC:
                sortFields = new SortField[] { new SortField("sales", SortField.Type.LONG, true), new SortField("createdDate", SortField.Type.LONG, true) };
                break;
            case SCORE_DESC:
                sortFields = new SortField[] { new SortField("score", SortField.Type.FLOAT, true), new SortField("createdDate", SortField.Type.LONG, true) };
                break;
            case DATE_DESC:
                sortFields = new SortField[] { new SortField("createdDate", SortField.Type.LONG, true) };
                break;
            }
        } else {
            sortFields = new SortField[] { new SortField("isTop", SortField.Type.STRING, true), new SortField(null, SortField.Type.SCORE), new SortField("createdDate", SortField.Type.LONG, true) };
        }
        fullTextQuery.setSort(new Sort(sortFields));
        fullTextQuery.setFirstResult((pageable.getPageNumber() - 1) * pageable.getPageSize());
        fullTextQuery.setMaxResults(pageable.getPageSize());
        return new Page<>(fullTextQuery.getResultList(), fullTextQuery.getResultSize(), pageable);

https://stackoverflow.com/questions/15285117/how-to-search-fields-with-wildcard-and-spaces-in-hibernate-search

对字符进行分词。检索,,,