*和+正则expression式之间的区别
有人可以告诉我下面的例子中*和+操作符的区别: 
  [<>]+ [<>]* 
 它们中的每一个都是量词,星号( * )表示前面的expression式可以匹配零次或多次,就像{0,}而加量词( + )表示前面的expression式必须至less匹配一次或多次次,与{1,}相同。 
所以回顾一下:
 a* ---> a{0,} ---> Match a or aa or aaaaa or an empty string a+ ---> a{1,} ---> Match a or aa or aaaa but not a string empty 
  *表示零个或多个, +表示一个或多个。 所以区别在于空string会匹配第二个expression式,而不是第一个。 
  *表示以前的expression式的零个或多个。 
换句话说,expression式是可选的。
你可以定义一个像这样的整数:
 -*[0-9]+ 
换句话说,可选的负号后跟一个或多个数字。
  +表示以前的一个或多个primefaces。  ( {1,} ) 
  *表示零个或多个 。 除了在方括号expression式中指定的字符之外,它什么也不能匹配。  ( {0,} ) 
 请注意, +在扩展和Perl兼容正则expression式中可用,在基本RE中不可用。  *在所有三种RE方言中都可用。 你使用的方言很可能取决于你所使用的语言。 
 很多情况下,现代操作系统中仍然默认为BRE的唯一东西是grep和sed (两者均具有EREfunction作为选项)和非vim vi 。 
他们是量词。
-   +表示1或者多个 (至less有一次匹配成功)
-   *表示0或许多 (无论searchstring是否存在,匹配成功)
  [<>]+与[<>][<>]*