Как мне сопоставить слово, которое начинается с «I», но не является словом «Integer»? - PullRequest
4 голосов
/ 21 июля 2010

Как написать регулярное выражение, которое будет соответствовать всем словам, начинающимся с I, кроме слова Integer?

Пример:

  t1: Integer;
  t2: Interface;
  t3: IXml;

Результат должен быть Interface и IXml.

Ответы [ 3 ]

4 голосов
/ 21 июля 2010

Это должно сделать:

I(?!nteger\b)\w+
1 голос
/ 21 июля 2010

Если вы не можете использовать предварительное утверждение, как предложено SilentGhost, вы можете выразить то же самое с помощью основного синтаксиса регулярного выражения:

I(\b|[A-Za-mo-z][A-Za-z]*|n(\b|[A-Za-su-z][A-Za-z]*|t(\b|[A-Za-df-z][A-Za-z]*|e(\b|[A-Za-fh-z][A-Za-z]*|g(\b|[A-Za-df-z][A-Za-z]*|e(\b|[A-Za-qs-z][A-Za-z]*|r[A-Za-z]+))))))
0 голосов
/ 21 июля 2010

Как насчет этого:

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