You can buy this project and download/modify it how often you want.
Search: (?) Comma-delimited list of key/value pair search terms. Keys are column names. Values are search terms. Example: [column1=foo*, column2<100, column3=2013-2016.06.30] String fields: - '*' represents any character - '?' represents one character - Use single or double quotes for phrases e.g. [column='foo bar'] - The term 'foo bar' - Multiple search terms are ORed e.g. [column=foo bar] - 'foo' OR 'bar' - Prepend '+' on tokens that must match e.g. [column=+foo* +*bar] - Start with 'foo' AND end with 'bar'. - Prepend '-' on tokens that must not match e.g. [column=+foo* -*bar] - Start with 'foo' AND does not end with 'bar'. Numeric fields: [column=123] - A single number [column=1 2 3] - Multiple numbers [column=1-100] - Between two numbers [column=1-100 200-300] - Two ranges of numbers [column>100] - Greater than a number [column>=100] - Greater than or equal to a number [column=!123] - Not a specific number Date/Calendar fields: [column=2001] - A specific year [column=2001.01.01.10.50] - A specific time [column>2001] - After a specific year [column>=2001] - During or after a specific year [column=2001-2003.06.30] - A date range [column=2001 2003 2005] - Multiple ORed dates View: (?) Comma-delimited list of columns to display. Example: [column1, column2] Sort: (?) Comma-delimited list of columns to sort by. Columns can be suffixed with '-' to indicate descending order. Example: [column1, column2-] Notes: - Columns containing collections/arrays/lists are sorted by size. Page: Position: Limit: Ignore-case:
[column1=foo*, column2<100, column3=2013-2016.06.30]
'*'
'?'
[column='foo bar']
[column=foo bar]
'+'
[column=+foo* +*bar]
'-'
[column=+foo* -*bar]
[column=123]
[column=1 2 3]
[column=1-100]
[column=1-100 200-300]
[column>100]
[column>=100]
[column=!123]
[column=2001]
[column=2001.01.01.10.50]
[column>2001]
[column>=2001]
[column=2001-2003.06.30]
[column=2001 2003 2005]
[column1, column2]
[column1, column2-]