• 首页
  • vue
  • TypeScript
  • JavaScript
  • scss
  • css3
  • html5
  • php
  • MySQL
  • redis
  • jQuery
  • SolrUtils::escapeQueryChars()

    (PECL solr >= 0.9.2)

    Escapes a lucene query string

    说明

    publicstaticSolrUtils::escapeQueryChars(string $str): string

    Lucene supports escaping special characters that are part of the query syntax.

    The current list special characters are:

    + - && || ! ( ) { } [ ] ^ " ~ * ? : \ /

    These characters are part of the query syntax and must be escaped

    参数

    $str

    This is the query string to be escaped.

    返回值

    Returns the escaped string 或者在失败时返回FALSE.

    A way of doing that with a regular expression:
    <?php
    // Lucene characters that need escaping with \ are + - && || ! ( ) { } [ ] ^ " ~ * ? : \
    $luceneReservedCharacters = preg_quote('+-&|!(){}[]^"~*?:\\');
    $query = preg_replace_callback(
      '/([' . $luceneReservedCharacters . '])/',
      function($matches) {
        return '\\' . $matches[0];
      },
      $query);
    ?>