RegEx,选择不在括号中的任何内容

时间:2010-05-20 11:01:21

标签: regex

在RegEx中,我如何选择不在括号中的任何内容: E。

Xxxxxxx (01010101)会返回Xxxxxxx

谢谢!

3 个答案:

答案 0 :(得分:3)

对于现有样本,这样做:

(.+) \(

答案 1 :(得分:1)

使用\([^)]*\)作为分隔符,可以在splitjava.util.Scanner等中使用,也可以将其用作""替换。

在Java中:

    System.out.println(Arrays.toString(
        "abc(xyz)def(123)".split("\\([^)]*\\)"))
    ); // prints "[abc, def]"
    System.out.println(
        "abc(xyz)def(123)".replaceAll("\\([^)]*\\)", "")
    ); // prints "abcdef"

答案 2 :(得分:0)

在Python中:

import re
def removeparens(inputstring):
    return re.sub(r"\([^)]*\)", "", inputstring)

将在parens永远不会嵌套的情况下提供此功能。