Lines Matching full:not
17 * This function is used in QueryParser::convert() and not for general purpose use.
42 $parsed = '()'; // important: do not remove
97 * NOT - logical not
99 * P+:, P-: - phrase (minus sign: logically in NOT group)
115 $not = $matches[1] ? 'NOT' : '';
116 $parsed = $not . $this->termParser($matches[2], false, true);
143 $parsed .= 'NOT(';
157 $parsed .= 'NOT(N+:' . $matches[1] . ')';
163 $parsed .= 'NOT(' . $this->termParser($matches[1]) . ')';
177 $parsed_query = preg_replace('/(NOT)?\(\)/u', '', $parsed_query);
179 $parsed_query = preg_replace('/(NOT|OR)+\)/u', ')', $parsed_query);
183 $parsed_query = preg_replace('/\)(NOT)?\(/u', ')AND$1(', $parsed_query);
190 '/(NOT\(|[()])/u',
196 if ($token === 'NOT(') {
203 // turn highlight-flag off if terms are logically in "NOT" group
219 $ope_precedence = [')' => 1, 'OR' => 2, 'AND' => 3, 'NOT' => 4, '(' => 5];
220 $ope_regex = '/([()]|OR|AND|NOT)/u';
253 // cleanup: each double "NOT" in RPN array actually does nothing
256 if ($parsed_ary[$i] === 'NOT' && $parsed_ary[$i - 1] === 'NOT') {
284 $q['not'][] = $body; // for backward compatibility
300 foreach (['words', 'phrases', 'highlight', 'ns', 'notns', 'and', 'not'] as $key) {
312 * @param array $not
319 public function revert(array $and, array $not, array $phrases, array $ns, array $notns) argument
323 if ($not !== []) {
324 $query .= ' -' . implode(' -', $not);