Суффикс префикса Java Regex - PullRequest
0 голосов
/ 08 июля 2011

Мне трудно обернуть голову вокруг поиска префиксов и суффиксов в регулярных выражениях.Я тренируюсь и хочу сделать следующее:

С учетом строки: "Джеймс хорош".Я хочу иметь возможность сопоставлять максимальную подстроку по порядку, т.е. получать совпадение, если текст «Джеймс» или «Джеймс - это» или «Джеймс - это хорошо».Поэтому, если у меня есть следующий текст: «Джеймс Джеймс - это Джеймс», я должен быть в состоянии поймать «Джеймс есть», а не только «Джеймс».Simalrly «Джеймс Джеймс - это хорошо» Джеймс должен дать мне «Джеймс - это хорошо», а не «Джеймс - это хорошо», так как он не в порядке и не максимален

Я думаю, что могу использовать суффикс, которого нет (?!), чтобы сопоставить, скажите только «Джеймс», если «хорошо» не присутствует и т. д., но я не уверен, правильно ли я понимаю концепцию сопоставления префикса и суффикса.

Любое разъяснение или помощь в этом случае было бы здорово.Я отметил тег java, потому что знакомлюсь с регулярным выражением Java Java.

Ответы [ 2 ]

1 голос
/ 08 июля 2011

Я думаю, вы имеете в виду, что хотите запечатлеть «Джеймс есть» и следующее слово, если оно существует. В этом случае вы должны сказать "(James is(?:\s+\w+)?)". Очевидно, в коде Java обратные слэши должны дублироваться.

Я не запускал это регулярное выражение, но считаю, что оно может дать хорошее начало для отладки вашего.

0 голосов
/ 08 июля 2011

Я не уверен, но я предполагаю, что вы говорите о взгляде позади и взгляните в будущее.

Утверждение имеет нулевую длину и соответствует пустой строке, поэтому никакие символы не соответствуют этой конструкции. Вы можете использовать их для сопоставления с шаблоном, только если ему предшествует или следует определенный другой шаблон (или нет, если вы используете отрицательные версии)

Более подробную информацию вы можете найти здесь регулярные выражения.info

Perlretut относится к Perl, но в Java работает аналогично.

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