2013-10-05 4 views
0

Есть ли более короткий способ написания этого с регулярным выражением или без него?Соответствующие строки

Dim q1 = System.Text.RegularExpressions.Regex.Match(myString, 
     "[\n\r]finished", System.Text.RegularExpressions.RegexOptions.IgnoreCase) 
If (q1.Success) Then Exit Sub 
+2

Вместо ** просто ** давая нам существующий код, почему бы нам не сказать, чего вы пытаетесь достичь? –

+0

принадлежит коду гольф? –

ответ

2

Да:

Imports System.Text.RegularExpressions 
If (Regex.IsMatch(SubjectString, "(?i)\nfinished")) Then Exit Sub 

(оно должно быть достаточно, чтобы проверить \n, если вы не также присматривается старые компьютеры Mac (файлы до OS X), которые используют только \r для переноса строк)

+0

Мне нравится эта короткая версия! есть ли возможный способ сделать то же самое без регулярного выражения только для учебных целей. – XK8ER

+0

Ну да - преобразовать всю строку в нижний регистр, а затем проверить, можете ли вы найти '' \ nfinished "' в ней. –

+0

в любом случае, чтобы увидеть некоторые образцы? – XK8ER

Смежные вопросы