## Bug description

The following filter fails with a 500 internal error.

![2021-02-04_12-07](https://user-images.githubusercontent.com/148820/106877644-a9f4ce80-66e1-11eb-8320-87bb213bdde2.png)


## Expected behavior

Error is shown to user about invalid regular expression.

Note no errors shown on the page as well.

## How to reproduce

1. Go to events
2. Add filter "Current URL matches regular expression ?*"
3. See infinite loading screen / error

## Environment

- [x] PostHog Cloud
- [x] self-hosted PostHog, version/commit: _please provide_

## Additional context

Note this can also happen when filtering by events.

#### *Thank you* for your bug report – we love squashing them!

posthog/utils.py
if not data:
        return None
    
    with push_scope() as scope:
        scope.set_context("data", data)
    compression = (
        request.GET.get("compression") or request.POST.get("compression") or request.headers.get("content-encoding", "")
    )
    compression = compression.lower()
    if compression == "gzip" or compression == "gzip-js":
        data = gzip.decompress(data)
    if compression == "lz64":
        if isinstance(data, str):
            data = lzstring.LZString().decompressFromBase64(data.replace(" ", "+"))
        else:
            data = lzstring.LZString().decompressFromBase64(data.decode().replace(" ", "+"))
        data = data.encode("utf-16", "surrogatepass").decode("utf-16")
    
    try:
        
        
        
        data = json.loads(data, parse_constant=lambda x: None)
    except json.JSONDecodeError:
        
        data = base64_to_json(data)
    data_res["data"] = data
    
    return data_res
class SingletonDecorator: