Есть ли способ использовать \ p {Punct} в регулярном выражении (java), но без символов "(", ")"? - PullRequest
11 голосов
/ 08 июня 2011

Есть ли способ использовать скороговорку \ p {Punct} в регулярном выражении в java, но без двух символов ( и )?

Ответы [ 2 ]

27 голосов
/ 08 июня 2011

Вы должны иметь возможность использовать:

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

То, что это говорит:

Класс punct символов, за исключением ( и ).

Символ ^ указывает класс отрицательных символов.&& - это пересечение класса punct и пользовательского класса для круглых скобок.

Для получения дополнительной информации ознакомьтесь с Pattern Javadocs.

11 голосов
/ 08 июня 2011

Это должно работать:

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

&& - это оператор пересечения для классов символов, поэтому пересечение \p{Punct} и [^()] - это то, что вам нужно. См. Классы символов .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...