繁体   English   中英

从字符串中的括号中删除多余的字母和数字

[英]remove extra letters and numbers from parenthesis in a string

我有一个像这样的字符串:

(aeiou 123) word one

如何从括号中删除所有内容,以便只保留“一字”?

您可以使用正则表达式,例如:

String str = "(aeiou 123) word one";
str = str.replaceAll("\\([^\\)]*\\)", "").trim();
public class ParanthesisRemoval {

public static void main(String args[])
{
    String test="ab(xy)cd(zw)ef";

    boolean modified = true;
    while(modified)
    {
        modified = false;
        int indexOpenParanthesis = test.indexOf("(");
        int indexClosedParanthesis = test.indexOf(")");
        if(indexOpenParanthesis!=-1 && indexClosedParanthesis!=-1 && indexOpenParanthesis<indexClosedParanthesis)
        {
            int stringLength = test.length();
            test = test.substring(0, indexOpenParanthesis)+test.substring(indexClosedParanthesis+1, stringLength);
            modified=true;
        }

    }

    System.out.println(test);
}

}

请注意,这不适用于嵌套的括号 - (()) 或括号未正确配对 (()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM