我發現這個答案 - https://stackoverflow.com/a/7943464/1901367 - 這給了我這個非常有用的代碼,讓我解析包含引號和空格的搜索字符串。使用REGEX解析搜索字符串與布爾運營商
preg_match_all('/(?<!")\b\w+\b|(?<=")\b[^"]+/', $subject, $result, PREG_PATTERN_ORDER);
我想知道,如果有人能告訴我如何改變這種代碼,以便它會離開布爾運算符,如+和 - 不變,因爲當前的代碼剝離出來。
我想做我的數據庫的全文布爾搜索使用這些運算符,我很困惑這個REGEX,我不明白。
示例輸入和輸出。
輸入:'「這是一些」這裏的文本是 - 更多 - 「exlude me」' 輸出:[這是一些] [文本] [這裏] [是] [ - 更多] [ - 排除我]這些將會出現在$ result數組中
因此,由空格分隔的所有內容都是單個項目,除非它是用「」括起來的短語。這已經有效,但是我擁有更多和更多的「排除我」,目前的結果是[更多]和[排除我]失去了我想保留的負號。
在此先感謝!
請提供例如輸入和這些輸入您的預計產出。 –
完成,我已將它添加到問題 –