In my program I'm parsing Japanese definitions, and I need to take a few things out. There are three things I need to take things out between. `「text」` `(text)` `《text》`

To take out things between `「」` I've been doing `sentence = re.sub('「[^)]*」','', sentence)` The problem with this is, for some reason if there are parentheses within `「」` it will not replace anything. Also, I've tried using the same code for the other two things like `sentence = re.sub('([^)]*)','', sentence)`
`sentence = re.sub('《[^)]*》','', sentence)` but it doesn't work for some reason. There isn't an error or anything, it just doesn't replace anything.

How can I make this work, or is there some better way of doing this?

**EDIT:**

I'm having a slight problem with another part of this though. Before I replace anything I check the length to make sure it's over a certain length. 

```
parse = re.findall(r'「[^」]*」','', match.text)
if len(str(parse)) > 8:
    sentence = re.sub(r'「[^」]*」','', match.text)

```

This seems to be causing an error now:

```
Traceback (most recent call last):
  File "C:/Users/Dominic/PycharmProjects/untitled9/main.py", line 48, in <module>
    parse = re.findall(r'「[^」]*」','', match.text)
  File "C:\Python34\lib\re.py", line 206, in findall
    return _compile(pattern, flags).findall(string)
  File "C:\Python34\lib\re.py", line 275, in _compile
    bypass_cache = flags & DEBUG
TypeError: unsupported operand type(s) for &: 'str' and 'int'

```

I sort of understand what's causing this, but I don't understand why It's not working just from that slight change. I know the re.sub part is fine, It's just the first two lines that are causing the problems.