2014-12-16 3 views
0

Внутри файла .vb, в Visual Studio 2013, я пытаюсь найти все вхождениярегулярное выражение, чтобы найти образец «word.word.word =»

parent.child.property = 

Я полный новичок в регулярных выражений , До сих пор я был только в состоянии собрать

\w\s[=] 
+1

Добро пожаловать в SO! Покажите или сообщите нам, что вы пробовали, и какая конкретная проблема у вас есть, поскольку SO не является «напишите мне какой-то код». –

+1

@JeffBridgman Тег VS может быть более подходящим, чем язык, если поиск выполняется через «Найти и заменить» в редакторе. Файл VB может просто быть входом. –

+0

@ KonradKokosa Если бы я знал, как писать регулярное выражение, я буду публиковать здесь вопрос? к сожалению, в моей ситуации сам ответ будет кодом. Я пробовал читать http://www.regular-expressions.info/wordboundaries.html, но очень прост для чтения для новичков. – krprasad

ответ

3

Узор вы перечислили, должны соответствовать часть нужной строки:

parent.child.property = 
//      ^^^ 

\w и \s сами по себе просто соответствует только один символ (y за \w и за \s). Предоставление quantifier (например, + для «1 или более») после каждого из них позволит им повторить, чтобы соответствовать последовательным символам (property для \w+).

\w+\s+= 
parent.child.property = 
//    ^^^^^^^^^^ 

Чтобы соответствовать parent.child. до этого, вы можете использовать group, чтобы соответствовать сочетание «слово», за которым следует период, добавив квантор после него (* для «ноль или более»), чтобы повторить всю группу по мере необходимости.

(?:\w+\.)*\w+\s+= 
+0

Большое спасибо: немного лучше: (?: \ W + \.) + (?: \ W + \.) \ W + \ s + = – krprasad

+0

* означает «ноль или больше», что я использую, если я хотите «один или несколько»? – krprasad

+1

'+' является «одним или несколькими». Он используется с '\ w' в опубликованных фрагментах. –

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