Is there a way to use \p{Punct} in a regex(java), but without the “(”,“)” characters?

后端 未结 2 771
無奈伤痛
無奈伤痛 2021-02-07 16:56

Is there a way to use \\p{Punct} in a regex in java, but without the two characters ( and ) ?

相关标签:
2条回答
  • 2021-02-07 17:01

    You should be able to use:

    [\p{Punct}&&[^()]]
    

    What this is saying is:

    The punct character class except for ( and ).

    The ^ character specifies a negative character class. The && is an intersection between the punct class and the custom class for the parenthesis.

    Have a look at the Pattern Javadocs for more info.

    0 讨论(0)
  • 2021-02-07 17:26

    This should work:

    [\p{Punct}&&[^()]]
    

    && is the intersection operator for character classes, so the intersection of \p{Punct} and [^()] is what you're after. See Character Classes.

    0 讨论(0)
提交回复
热议问题