正则表达式来查找括号和括号中的数字。JAVA
正则表达式用于查找括号和这些括号中的数字是什么 期望输出:正则表达式来查找括号和括号中的数字。JAVA,java,regex,Java,Regex,正则表达式用于查找括号和这些括号中的数字是什么 期望输出: input=“Hello(1)World”.replaceAll(regex,“*”) 结果=Hello*World 我尝试了以下方法: 输入=“你好(1)世界”.replaceAll(“([0-9])”,“*” 结果=“”你好(*)世界“ 为什么?(和)是正则表达式中的保留字符(它们创建了一个组)。您需要将它们转义以替换它们: "Hello (1) World".replaceAll("\\([0-9]\\)", "*");
- input=
.replaceAll(“Hello(1)World”
,“*”)李>regex
- 结果=
Hello*World
- 输入=
.replaceAll(“你好(1)世界”
,“*”李>“([0-9])”
- 结果=“
”你好(*)世界“
(
和)
是正则表达式中的保留字符(它们创建了一个组)。您需要将它们转义以替换它们:
"Hello (1) World".replaceAll("\\([0-9]\\)", "*");
你可以试试这个
"Hello (1) World".replaceAll("\\(\\d+\\)", "*");
(
)是正则表达式中表示捕获组的特殊字符。必须捕获(
,)
中的任何内容。因此,如果使用([0-9])
,字符串中的所有数字都将被捕获并替换为*
。它与(数字)
表单不匹配。因此,为了匹配文本(
,)
字符需要转义。如果还想替换(989898)
即(anynum)
,则需要在\\d
或[0-9]之后添加+