2014-06-08 4 views
-3

У меня есть строка, которая имеет слово «предоставлено» и может иметь или не иметь слова «тупик».Нужна помощь в шаблоне Regex- C#

мне нужно регулярное выражение в C# для двух сценариев:

  1. Строка должна содержать как «при условии» и «мертвой точки».

  2. Строка должна содержать «предоставленную», но не «тупиковую».

Так что мне нужно два регулярных выражений шаблон для этого

Я попытался (?.*provided).* ^(?!.*deadlock).*$ Но это не помогло мне.

+0

почему бы не использовать содержит функцию вместо Regex? – Derek

+0

В принципе, вам нужно проверить, существует ли 'provided'. Проверка наличия «тупика» является избыточной. Подумайте об этом, вам не нужно регулярное выражение. – HamZa

ответ

3

Строка должна содержать как «предоставленную», так и «тупиковую».

^(?=.*deadlock).*provided 

Regular expression visualization

Строка должна содержать "при условии", но не "мертвой точки".

^(?!.*deadlock).*provided 

Regular expression visualization

+0

Спасибо за ответ ... В моей строке «при условии» придет первый, а затем появится «тупик». Так будет ли это в этом шаблоне? – user3719370

+1

@ user3719370 Решение Улугбека будет работать независимо от порядка +1 :) – zx81

+0

Спасибо. Я использовал это. но не соответствует строке. Строка, содержащая в ней слово «предоставлено», но не «тупик». Как только шаблон сопоставляется с использованием Regex.Match (mystring, pattern), результат «Match.Success» является ложным. – user3719370