PowerShell:
Att använda reguljära uttryck
Hur man gör:
I PowerShell kan du använda operatorerna , och , bland andra, för att utföra åtgärder med reguljära uttryck. Låt oss utforska några exempel:
Använda för att kontrollera om en sträng matchar ett mönster
Denna operator returnerar om mönstret hittas i strängen, och annars.
Extrahera matchningar
Du kan extrahera det matchade värdet genom att komma åt den automatiska variabeln .
Använda för substitutioner
Operatorn ersätter alla förekomster av ett mönster med en angiven ersättningssträng.
Dela strängar med
Dela en sträng i en vektor av delsträngar baserat på ett regex-mönster.
Avancerad mönstermatchning
PowerShell stöder också mer komplexa regex-operationer via -klassen, vilket ger dig tillgång till metoder som , , och .
Dessa exempel visar kraften och mångsidigheten hos reguljära uttryck i PowerShell för datamanipulation och mönstermatchning. Genom att utnyttja regex kan programmerare utföra komplex textbearbetning effektivt.
Sökning och ersättning av text
Select-String
Söker efter text i strängar och filer.
Syntax
Description
Cmdleten använder reguljär uttrycksmatchning för att söka efter textmönster i indatasträngar och filer. Du kan använda som liknar i UNIX eller i Windows.
baseras på textrader. Som standard hittar den första matchningen på varje rad och för varje matchning visas filnamnet, radnumret och all text på raden som innehåller matchningen. Du kan dirigera att hitta flera matchningar per rad, visa text före och efter matchningen eller visa ett booleskt värde (Sant eller Falskt) som anger om en matchning hittas.
kan visa alla textmatchningar eller stoppa efter den första matchningen i varje indatafil. kan användas för att visa all text som inte matchar det angivna mönstret.
Du kan också ange att bör förvänta sig en viss teckenkodning, till exempel när du söker i filer med Unicode-text. använder byte-order-mark (BOM) för att identifiera kodningsformatet för filen. Om filen inte har någon strukturlista förutsätter den att kodningen är UTF8.
Exempel
Exempel 1: Hitta en skiftlägeskänslig matchning
I det här exemplet matchas skiftlägeskänsligt med texten som skickades ned i pipelinen till cmdleten .
Textsträn
Hur man använder jämförelseoperatorer i PowerShell?
Det här inlägget kommer att diskutera jämförelseoperatörerna i PowerShell.
Förstå PowerShell Comparison Operators
I PowerShell används flera typer av jämförelseoperatorer, till exempel:
- Matchande operatörer
- Jämställdhetsaktörer
- Inneslutningsoperatörer
Metod 1: Matcha operatörer
De matchande operatorerna används för att jämföra strängvärdena med hjälp av reguljära uttryck. Dessutom använder den jokertecknet "*" för att hitta den exakta matchningen. Matchande operatörer inkluderar "-tycka om”, “-inte som”,“-match", och "-matchar inte”.
Exempel 1: Använd matchningsoperatorn "-matcha" för att jämföra två värden
Det här exemplet kommer att jämföra de två variabelvärdena med hjälp av "-match" parameter.
about_Comparison_Operators
Kort beskrivning
Jämförelseoperatorerna i PowerShell kan antingen jämföra två värden eller filtrera element i en samling med ett indatavärde.
Lång beskrivning
Med jämförelseoperatorer kan du jämföra värden eller hitta värden som matchar angivna mönster. PowerShell innehåller följande jämförelseoperatorer:
Jämlikhet
- , , - är lika med
- , , - är inte lika med
- , , - större än
- , , - större än eller lika med
- , , - mindre än
- , , - mindre än eller lika med
Matchning
- , , - sträng matchar jokerteckenmönster
- , , - strängen matchar inte jokerteckenmönstret
- , , - sträng matchar regex-mönster
- , , – strängen matchar inte regex-mönster
Ersättning
- , , - ersätter strängar som matchar ett regex-mönster
Inneslutning
- , , - samlingen innehåller ett värde
- , , – samlingen innehåller inget värde
- , , – värdet finns i en samling
- , , – värdet finns inte i en samling
Typ
- – båda objekten är av samma typ
- – objekten är inte av samma typ
Vanliga funktioner
Strängjämförelser är skiftlägeskänsliga om du inte använder den explicita skiftlägeskänsliga operatorn. Om du vill göra en jämförelseoperator skiftlägeskänslig lägger du till en efter
.