java - 需要 java 正则表达式来获得特定的输出

标签 java regex string

这是我的代码。

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/

相关文章:

regex - 需要通过 vb.net 从字符串中的数字中分离出字母

string - 如何在不使用 load() 或 loadstring() 的情况下将表格式字符串转换为表?

arrays - C# 或 JavaScript : Determining common prefix in strings

java - Android 和 Eclipse 的 Protocol Buffer : NoClassDefFoundError

java - IntelliJ IDEA 15 不生成 .class 文件

java - 使用应该相同的变量时的两个不同答案(mergeSort)

java - 在Java中修剪字符串的正确方法

java - 如何禁用组件内 ENTER 键的 JDialog 默认按钮处理

python - django 中的 url 中带分号的 url 需要什么模式

java - 正则表达式从 founded 关键字替换为 next &