这是我的代码。
String parsedValue = "(1234)";
if(!parsedValue.equals("")){
parsedValue = parsedValue.replaceAll("\\(*\\)", "");//I can just change the regex but still need to use replaceAll method.
}
System.out.println(parsedValue);
我得到输出:(1234
我的预期输出是:1234
基本上我想去掉两端的括号。
除了 replaceAll 方法,我不能使用任何其他方法。那部分代码不在我的控制之下。我可以更改正则表达式。
非常感谢任何形式的帮助。
最佳答案
你只需要在任何地方定位字符,只使用一个字符类:
parsedValue.replaceAll("[()]", "");
或者,如果您只想定位开头或结尾的字符,请使用 anchor (^
和 $
)和交替( |
):
parsedValue.replaceAll("^\\(+|\\)+$", "");
关于java - 需要 java 正则表达式来获得特定的输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34025140/