Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/389.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
正则表达式来查找括号和括号中的数字。JAVA_Java_Regex - Fatal编程技术网

正则表达式来查找括号和括号中的数字。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=
    “Hello(1)World”
    .replaceAll(
    regex
    ,“*”)
  • 结果=
    Hello*World
我尝试了以下方法:

  • 输入=
    “你好(1)世界”
    .replaceAll(
    “([0-9])”
    ,“*”
  • 结果=“
    ”你好(*)世界“
为什么?

是正则表达式中的保留字符(它们创建了一个组)。您需要将它们转义以替换它们:

"Hello (1) World".replaceAll("\\([0-9]\\)", "*");
你可以试试这个

"Hello (1) World".replaceAll("\\(\\d+\\)", "*");
)是正则表达式中表示捕获组的特殊字符。必须捕获
中的任何内容。因此,如果使用
([0-9])
,字符串中的所有数字都将被捕获并替换为
*
。它与
(数字)
表单不匹配。因此,为了匹配文本
字符需要转义。如果还想替换
(989898)
(anynum)
,则需要在
\\d
[0-9]之后添加
+