2015-05-05 17:07:32 -04:00
---
layout: doc_page
---
# Refining Search Queries
Search query specs define how a "match" is defined between a search value and a dimension value. The available search query specs are:
InsensitiveContainsSearchQuerySpec
----------------------------------
If any part of a dimension value contains the value specified in this search query spec, regardless of case, a "match" occurs. The grammar is:
```json
{
"type" : "insensitive_contains",
"value" : "some_value"
}
```
FragmentSearchQuerySpec
-----------------------
2015-11-02 00:21:29 -05:00
If any part of a dimension value contains all of the values specified in this search query spec, regardless of case by default, a "match" occurs. The grammar is:
2015-05-05 17:07:32 -04:00
```json
{
"type" : "fragment",
2015-11-02 00:21:29 -05:00
"case_sensitive" : false,
2015-05-05 17:07:32 -04:00
"values" : ["fragment1", "fragment2"]
}
```
2015-11-02 00:21:29 -05:00
ContainsSearchQuerySpec
----------------------------------
If any part of a dimension value contains the value specified in this search query spec, a "match" occurs. The grammar is:
```json
{
"type" : "contains",
"case_sensitive" : true,
"value" : "some_value"
}
2015-11-23 16:38:29 -05:00
```
RegexSearchQuerySpec
----------------------------------
If any part of a dimension value contains the pattern specified in this search query spec, a "match" occurs. The grammar is:
```json
{
"type" : "regex",
"pattern" : "some_pattern"
}
2015-11-02 00:21:29 -05:00
```