I have the following search term:

`"login:17639 email:fakemail@gmail.com ref:co-10000 common_name:testingdomain organization:'Internet Company'"`

This term is derived from a params variable where everything to the left of the `:` is a filter term and everything on the right of `:` is the value of the filter. What I'm trying to do is to split the term into keys and values and create a hash from them. This is the end goal:

```
search_filters = {
  login:17639,
  email:'fakemail@gmail.com',
  etc, etc,
}

```

I'm playing around with `split, gsub, tr` to get these values but I'm having a problem with the organization field. Here is what I have so far:

```
term.gsub(/'/,'').tr(':', ' ').split(" ")
term.gsub(":")

```

And basically, many other variations like the above. The problem is the organization field. Every iteration results in something like this `["organization", "Internet", "Company"]` the problem is that "Internet Company" is being split. I can't place a simple if/else statement just for this filter to glue them together because there are more filters to process. Is there a way I can simply divide the filter term based off the colon easier? Thank you.