8

Visual Studio 2010'da, tek satırlı bir yorum içinde olmayan metinleri nasıl ararsınız? EG içinde "bas" bulmak için nasıl:Visual Studio 2010'da, tek satırlı bir yorum içinde olmayan metinleri nasıl ararsınız?

foo bar bas 

ama o çizgiyi bulmak gerektiğini

foo bar // bas 

Not:

foo/bar/bas 

(edit) Ve bulmak olmamalı satırları:

foo // bar bas 
+0

Tamam, bu soruyu sordum, böylece kendi yanıtıma geri dönebilseydim. Ne yazık ki, kendi sorumu cevaplamak için 8 saat beklemek zorundayım. Visual Studio, tipik ileriye dönük, arkadaki yapılara sahip görünmüyor. Benzer bir sıfır genişlikli negatif savı var. Sözdizimi ~ (x) şeklindedir; bu, desenin modelde bu noktada x ile uyuşmadığı anlamına gelir. Bu kuralı kullanarak şu şekilde çıktım: ^ (. ~ (//)) * bas Gerçekten iyi çalışan, ancak satırdaki ilk iki karakter olan bir satırla eşleşmeyecek. Bunu düzeltmek için bir sürüm: ^ ~ (//) (. ~ (//)) * bas – Tony

+0

Sadece kendinize bir soru mi sordunuz? – iandotkelly

+0

Yani, bu yorumu yayınladınız çünkü sorunuzu zaten cevapladım. :) – Tony

cevap

6

Tamam, bu soruyu sordum, böylece kendi yanıtıma geri dönebilseydim. Visual Studio, tipik ileriye dönük, arkadan görünüm yapılarına sahip görünmüyor gibi görünüyor. Benzer bir sıfır genişlikli negatif savı var. Sözdizimi ~ (x) şeklindedir; bu, desenin modelde bu noktada x ile uyuşmadığı anlamına gelir. Bu kurguyu kullanarak, şu sonuca vardım: ^(.~(//))*bas Gerçekten iyi çalışan, ancak satırdaki ilk iki karakter olan bir satırı hariç tutmayacağım. Düzeltilecek bir sürüm: ^~(//)(.~(//))*bas

6

Visual Studio Find'ta arama og, (: Düzenli ifadeler Bul seçeneklerinde kullanın seçtiğinizden emin olun): Bu normal bir ifade kullanmayı deneyin Bu // öncesinde değil kelimenin bas tüm tekrarlamalarını bulmak gerekir

~(//[.:b]*)<bas> 

.

Visual Studio regex sözdiziminin geleneksel sözdiziminden biraz farklı olduğunu unutmayın. Referansı HERE bulabilirsiniz.

+0

Bu, örnekte çalışmaz: foo // bar/bas, bas bir yorumda bulunur ve bu nedenle bulunmamalıdır. Cevabınız için ve bağlantı için teşekkürler. Ayrıca, ne istediğinize bağlı olsa da, < and > kelime sınırlamaları muhtemelen gerekli değildir. – Tony

+5

VS2012 kullanıcıları için: "Visual Studio 2012, metni bulmak ve değiştirmek için .NET Framework normal ifadelerini kullanır. Visual Studio 2010 ve önceki sürümlerinde, Visual Studio, Windows Bul ve Değiştir uygulamasında özel düzenli ifade sözdizimi kullandı". Kaynak: [Visual Studio'da Normal İfadeleri Kullanmak] (http://msdn.microsoft.com/en-us/library/2k3te2cs (v = vs.110) .aspx) –

İlgili konular