Commit 884abe82 authored by Dominik Hebeler's avatar Dominik Hebeler

Merge branch '884-phrase-exclusion-shouldn-t-work-inside-phrase-search-ls-l' into 'development'

Resolve "phrase exclusion shouldn't work inside phrase search "ls -l""

Closes #884

See merge request !1455
parents efcde1f2 e6aefdad
......@@ -1116,6 +1116,7 @@ class MetaGer
$tmp = $match[1] . $match[3];
$this->phrases[] = $match[2];
}
foreach ($this->phrases as $phrase) {
$p .= "\"$phrase\", ";
}
......@@ -1215,8 +1216,16 @@ class MetaGer
private function searchCheckStopwords($request)
{
$oldQ = $this->q;
$tmp = $this->q;
// matches '[... ]"test satz"[ ...]'
// In order to avoid "finding" stopwords inside of phrase searches only strings outside of quotation marks should be checked
while (preg_match("/(^|.*?\s)\"(.+)\"(\s.*|$)/si", $tmp, $match)) {
$tmp = $match[1] . $match[3];
}
// matches '[... ]-test[ ...]'
$words = preg_split("/\s+/si", $this->q);
$words = preg_split("/\s+/si", $tmp);
$newQ = "";
foreach ($words as $word) {
if (strpos($word, "-") === 0 && strlen($word) > 1) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment