正则表达式中+ 与 * 有啥区别?

在正则表达式中,"+“和”*"都是量词,用于指定前面的模式可以重复出现的次数。它们之间的区别如下:

  1. “+”(一次或多次):表示前面的模式必须出现至少一次或更多次。它要求前面的模式在匹配中至少出现一次,但可以重复多次。

    例如,正则表达式a+将匹配一个或多个连续的字符"a"。以下示例匹配成功:

    • “”:匹配失败,因为模式出现零次。
    • “a”:匹配成功。
    • “aa”:匹配成功。
    • “aaa”:匹配成功。
    • “b”:匹配失败。
  2. “*”(零次或多次):表示前面的模式可以出现零次或多次。它允许前面的模式在匹配中出现零次或多次。

    例如,正则表达式a*将匹配零个或多个连续的字符"a"。以下示例匹配成功:

    • “”(空字符串):匹配成功,因为模式出现零次。
    • “a”:匹配成功。
    • “aa”:匹配成功。
    • “aaa”:匹配成功。
    • “b”:匹配失败。

总结一下:

  • "+"要求前面的模式至少出现一次或更多次。
  • "*"允许前面的模式出现零次或多次。

猜你喜欢

转载自blog.csdn.net/wenhao_ir/article/details/131289181