<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def streaming_client(self, tasks_regex, tasks_negate, workers_regex, workers_negate):
 """Connects a client to the streaming capture, filtering the events that are sent to it. Args: tasks_regex (str):
 a pattern to filter tasks to capture. ex.: '^dispatch|^email' to filter names starting with that or 'dispatch.*123456' to filter that exact name and number or even '123456' to filter that exact number anywhere. tasks_negate (bool):
 if True, finds tasks that do not match criteria workers_regex (str):
 a pattern to filter workers to capture. ex.: 'service|priority' to filter names containing that workers_negate (bool):
 if True, finds workers that do not match criteria """


        cc = CapturingClient(Queue(),
                             re.compile(tasks_regex), tasks_negate,
                             re.compile(workers_regex), workers_negate)

        self.observers.append(cc)
        yield cc.queue
        self.observers.remove(cc)