Visual Basic 2012 Voorbeelden
   

visual basic 2012 broncode voorbeelden

Blijf op de hoogte van de recente aanpassingen op vbvoorbeelden!

Microsoft Visual Studio 2012Microsoft Developers Network - Visual BasicMicrosoft .NET Framework

28.11. Visual Studio en Regular Expressions

Print Email Deel op Twitter Deel op Facebook

Dit artikel is gepubliceerd op maandag 15 oktober 2012 op vbvoorbeelden, bezoek de website voor een recente versie van dit artikel of andere artikels.

28.11.1. Visual Studio 2012

Vanaf Visual Studio 2012 worden .NET Framework reguliere expressies gebruikt in de zoek en vervang functionaliteit.
De mogelijkheden zoals besproken in de vorige topics zijn dus ook van toepassing.
Op volgende link vind je meer over de verschillen in Visual Studio 2010 en 2012 betreffende reguliere expressie synthax.

28.11.2. Visual Studio 2010

Ook Visual Studio 2010 (en vorige) beschikken bij het zoeken en vervangen van tekst in de editor over de mogelijkheid reguliere expressies te gebruiken.
De mogelijkheden zijn echter niet dezelfde als deze van de .NET Framework regex engine zelf.  Over het algemeen kunnen we minder doen, met uitzondering van enkele intressante toevoegingen.

Enkele mogelijkheden zien we hieronder :
escaped special characters   \

metacharacters               \n  line break

positive character classes   []
negative character classes   [^]

period character class       .   any character

quantifiers                  *   zero or more
                             +   one or more

positional assertions        ^   beginning of line
                             $   end of line

alternations                 |
Tot zover identiek als in de .NET regex engine.

Verschillend is hoe je een groep markeert :
group                        {}  instead of ()
Intressante extras zijn :
positional assertions        <   beginning of word
                             >   end of word
Stel dat we in onderstaand voorbeeld op zoek wensen te gaan naar de velden, in de veronderstelling dat we voor onze velden steeds de prefix m_ gebruiken.
Visual Basic 2012 Broncode - Codevoorbeeld 740
Class Rectangle
    Private m_Height As Double
    Private m_Width As Double
    Public Property Height() As Double
        Get
            Height = m_Height
        End Get
        Set(ByVal value As Double)
            m_Height = value
        End Set
    End Property
    Public Property Width() As Double
        Get
            Width = m_Width
        End Get
        Set(ByVal value As Double)
            m_Width = value
        End Set
    End Property
End Class
Dan kunnen we in het "Find and Replace" toolvenster in het "Find what:" veld het pattern <_[a-zA-Z0-9_]*> opnemen.  Alle verwijzingen naar deze velden op de regels (1) tot en met (6) worden gevonden.

Bemerk hoe we geen \b (word break) kunnen gebruiken, maar gezien de beschikbare < en > vormt dit geen probleem.  Ook de shorthand character class \w (word character) is niet beschikbaar en moeten we voluit aan de hand van de character class [a-zA-Z0-9_] formuleren.

Indien we de prefix van al onze velden wensen te veranderen naar enkel een underscore vullen we in het "Find what:" veld het pattern <m{_[a-zA-Z0-9_]*}> in en in het "Replace with:" veld \1.  Hier verwijzen we met een backreference naar de capture van de groep met nummer 1.

Dit artikel is gepubliceerd op maandag 15 oktober 2012 op vbvoorbeelden, bezoek de website voor een recente versie van dit artikel of andere artikels.