java正则表达式:(\\ d {1,2})\\ /(\\ d {1,2})\\ /(\\ d {1,4})

时间:2015-10-25 03:34:57

标签: java regex

我想知道:(\\ d {1,2})\\ /(\\ d {1,2})\\ /(\\ d {1,4})

我知道" \ d {1,2}"表示" 1到2个数字"和" \ /"意思是" /"

但我不知道剩下的事情意味着什么。为什么会有这么多" \" !它跟我联系了

应该是" \ /"代替" \\ /"," \ d"而不是" \\ d"

我已经运行了该程序。它工作得非常好。以下是该计划的一部分。

/** Constructs a Date object corresponding to the given string.
   *  @param s should be a string of the form "month/day/year" where month must
   *  be one or two digits, day must be one or two digits, and year must be
   *  between 1 and 4 digits.  If s does not match these requirements or is not
   *  a valid date, the program halts with an error message.
   */
  public Date(String s) {if (s.matches("(\\\d{1,2})\\\\/(\\\d{1,2})\\\\/(\\\d{1,4}) "))      //this is the first line of the 

object.

  }

1 个答案:

答案 0 :(得分:0)

您很可能使用JavaScript等语言构建正则表达式,其中反斜杠需要在之前转义,然后将它们解释为正则表达式的一部分。

在这种情况下,\\d将缩减为字面反斜杠,然后是 d \d),而后者将被评估为查找数字的字词。< / p>

如果不清楚,这个问题及其答案可能会进一步促进您的理解: Java Regex Escape Characters