Move left pane entirely to React
This commit is contained in:
24
ts/util/cleanSearchTerm.ts
Normal file
24
ts/util/cleanSearchTerm.ts
Normal file
@@ -0,0 +1,24 @@
|
||||
export function cleanSearchTerm(searchTerm: string) {
|
||||
const lowercase = searchTerm.toLowerCase();
|
||||
const withoutSpecialCharacters = lowercase.replace(
|
||||
/([!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~])/g,
|
||||
' '
|
||||
);
|
||||
const whiteSpaceNormalized = withoutSpecialCharacters.replace(/\s+/g, ' ');
|
||||
const byToken = whiteSpaceNormalized.split(' ');
|
||||
const withoutSpecialTokens = byToken.filter(
|
||||
token =>
|
||||
token &&
|
||||
token !== 'and' &&
|
||||
token !== 'or' &&
|
||||
token !== 'not' &&
|
||||
token !== ')' &&
|
||||
token !== '(' &&
|
||||
token !== '+' &&
|
||||
token !== ',' &&
|
||||
token !== 'near'
|
||||
);
|
||||
const withWildcards = withoutSpecialTokens.map(token => `${token}*`);
|
||||
|
||||
return withWildcards.join(' ').trim();
|
||||
}
|
Reference in New Issue
Block a user