регулярное выражение, не содержащее специального слова в java - PullRequest
0 голосов
/ 11 января 2020

Входная строка

hello sworked? worked hello

Выходная строка

Мне нужно только work в worked.

Я пытался использовать это регулярное выражение

(?!s)work

Но это возвращает все work в sworked? и worked.

1 Ответ

0 голосов
/ 11 января 2020

Для соответствия work без предшествующего s используйте

(?<!s)work

См. подтверждение и объяснение . (?<!s) - это отрицательный взгляд, запрещающий s прямо перед work.

Или сопоставьте слово starttign с work:

\bwork

См. demo . \b является границей слова.

Добавьте \w*, чтобы соответствовать остальному слову, если необходимо.

В Java, двойные обратные слэши (например, String regex = "\\bwork";).

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