Regular Expressions 101

Save & Share

  • Regex Version: ver. 1
  • Update Regex
    ctrl+⇧+s
  • Save new Regex
    ctrl+s
  • Add to Community Library

Flavor

  • PCRE2 (PHP >=7.3)
  • PCRE (PHP <7.3)
  • ECMAScript (JavaScript)
  • Python
  • Golang
  • Java 8
  • .NET 7.0 (C#)
  • Rust
  • Regex Flavor Guide

Function

  • Match
  • Substitution
  • List
  • Unit Tests

Tools

Sponsors
There are currently no sponsors. Become a sponsor today!
An explanation of your regex will be automatically generated as you type.
Detailed match information will be displayed here automatically.
  • All Tokens
  • Common Tokens
  • General Tokens
  • Anchors
  • Meta Sequences
  • Quantifiers
  • Group Constructs
  • Character Classes
  • Flags/Modifiers
  • Substitution
  • A single character of: a, b or c
    [abc]
  • A character except: a, b or c
    [^abc]
  • A character in the range: a-z
    [a-z]
  • A character not in the range: a-z
    [^a-z]
  • A character in the range: a-z or A-Z
    [a-zA-Z]
  • Any single character
    .
  • Alternate - match either a or b
    a|b
  • Any whitespace character
    \s
  • Any non-whitespace character
    \S
  • Any digit
    \d
  • Any non-digit
    \D
  • Any word character
    \w
  • Any non-word character
    \W
  • Non-capturing group
    (?:...)
  • Capturing group
    (...)
  • Zero or one of a
    a?
  • Zero or more of a
    a*
  • One or more of a
    a+
  • Exactly 3 of a
    a{3}
  • 3 or more of a
    a{3,}
  • Between 3 and 6 of a
    a{3,6}
  • Start of string
    ^
  • End of string
    $
  • A word boundary
    \b
  • Non-word boundary
    \B

Regular Expression

/
/
gm

Test String

Substitution

Processing...

Code Generator

Generated Code

# If you'd like to omit non-matching lines from the result; add ';d' to the end of the expression. sed -E 's/(?:(?:\s+<PackageVersion Include="([^"]+)".*)|.*)/$1,/gm;t' <<< "<Project> <!-- Workaround https://github.com/dependabot/dependabot-core/issues/8490 --> <!-- This file gets imported for out-of-tree test runs also where eng/Versions.props isn't available --> <Import Project=\"eng/Versions.props\" Condition=\"'$(MajorVersion)' == '' and Exists('eng/Versions.props')\" /> <PropertyGroup> <ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally> <TestcontainersPackageVersion>3.9.0</TestcontainersPackageVersion> </PropertyGroup> <ItemGroup> <!-- AWS SDK for .NET dependencies --> <PackageVersion Include=\"AWSSDK.CloudFormation\" Version=\"3.7.308.18\" /> <PackageVersion Include=\"AWSSDK.SQS\" Version=\"3.7.301.26\" /> <PackageVersion Include=\"AWSSDK.SimpleNotificationService\" Version=\"3.7.301.61\" /> <PackageVersion Include=\"AWSSDK.Core\" Version=\"3.7.304.23\" /> <PackageVersion Include=\"AWSSDK.Extensions.NETCore.Setup\" Version=\"3.7.301\" /> <PackageVersion Include=\"AWS.Messaging\" Version=\"0.9.1\" /> <PackageVersion Include=\"OpenTelemetry.Instrumentation.AWS\" Version=\"1.1.0-beta.4\" /> <PackageVersion Include=\"OpenTelemetry.Extensions.AWS\" Version=\"1.3.0-beta.1\" /> <!-- Azure SDK for .NET dependencies --> <PackageVersion Include=\"Azure.AI.OpenAI\" Version=\"1.0.0-beta.17\" /> <PackageVersion Include=\"Azure.Data.Tables\" Version=\"12.8.3\" /> <PackageVersion Include=\"Azure.Extensions.AspNetCore.Configuration.Secrets\" Version=\"1.3.1\" /> <PackageVersion Include=\"Azure.Identity\" Version=\"1.12.0\" /> <PackageVersion Include=\"Azure.Messaging.EventHubs.Processor\" Version=\"5.11.3\" /> <PackageVersion Include=\"Azure.Messaging.ServiceBus\" Version=\"7.17.5\" /> <PackageVersion Include=\"Azure.Search.Documents\" Version=\"11.5.1\" /> <PackageVersion Include=\"Azure.Messaging.WebPubSub\" Version=\"1.3.0\" /> <PackageVersion Include=\"Azure.Security.KeyVault.Secrets\" Version=\"4.6.0\" /> <PackageVersion Include=\"Azure.Storage.Blobs\" Version=\"12.20.0\" /> <PackageVersion Include=\"Azure.Storage.Queues\" Version=\"12.18.0\" /> <PackageVersion Include=\"Microsoft.Azure.AppConfiguration.AspNetCore\" Version=\"7.2.0\" /> <PackageVersion Include=\"Microsoft.Azure.Cosmos\" Version=\"3.41.0\" /> <PackageVersion Include=\"Microsoft.Azure.SignalR\" Version=\"1.25.2\" /> <PackageVersion Include=\"Microsoft.Extensions.Azure\" Version=\"1.7.4\" /> <!-- Azure Management SDK for .NET dependencies --> <PackageVersion Include=\"Azure.Provisioning\" Version=\"0.3.0\" /> <PackageVersion Include=\"Azure.Provisioning.AppConfiguration\" Version=\"0.2.0\" /> <PackageVersion Include=\"Azure.Provisioning.ApplicationInsights\" Version=\"0.1.0\" /> <PackageVersion Include=\"Azure.Provisioning.CognitiveServices\" Version=\"0.2.0\" /> <PackageVersion Include=\"Azure.Provisioning.CosmosDB\" Version=\"0.1.0\" /> <PackageVersion Include=\"Azure.Provisioning.EventHubs\" Version=\"0.1.0\" /> <PackageVersion Include=\"Azure.Provisioning.KeyVault\" Version=\"0.2.0\" /> <PackageVersion Include=\"Azure.Provisioning.OperationalInsights\" Version=\"0.2.0\" /> <PackageVersion Include=\"Azure.Provisioning.PostgreSql\" Version=\"0.1.0\" /> <PackageVersion Include=\"Azure.Provisioning.Redis\" Version=\"0.2.0\" /> <PackageVersion Include=\"Azure.Provisioning.Resources\" Version=\"0.2.0\" /> <PackageVersion Include=\"Azure.Provisioning.Search\" Version=\"0.1.0\" /> <PackageVersion Include=\"Azure.Provisioning.ServiceBus\" Version=\"0.1.0\" /> <PackageVersion Include=\"Azure.Provisioning.SignalR\" Version=\"0.2.0\" /> <PackageVersion Include=\"Azure.Provisioning.Sql\" Version=\"0.1.0\" /> <PackageVersion Include=\"Azure.Provisioning.Storage\" Version=\"0.2.0\" /> <PackageVersion Include=\"Azure.Provisioning.WebPubSub\" Version=\"0.1.0-beta.1\" /> <!-- ASP.NET Core dependencies --> <PackageVersion Include=\"Microsoft.AspNetCore.Authentication.Certificate\" Version=\"$(MicrosoftAspNetCoreAuthenticationCertificatePackageVersion)\" /> <PackageVersion Include=\"Microsoft.AspNetCore.Authentication.OpenIdConnect\" Version=\"$(MicrosoftAspNetCoreAuthenticationOpenIdConnectPackageVersion)\" /> <PackageVersion Include=\"Microsoft.AspNetCore.OpenApi\" Version=\"$(MicrosoftAspNetCoreOpenApiPackageVersion)\" /> <PackageVersion Include=\"Microsoft.AspNetCore.OutputCaching.StackExchangeRedis\" Version=\"$(MicrosoftAspNetCoreOutputCachingStackExchangeRedisPackageVersion)\" /> <PackageVersion Include=\"Microsoft.Extensions.Caching.StackExchangeRedis\" Version=\"$(MicrosoftExtensionsCachingStackExchangeRedisPackageVersion)\" /> <PackageVersion Include=\"Microsoft.Extensions.Diagnostics.HealthChecks.EntityFrameworkCore\" Version=\"$(MicrosoftExtensionsDiagnosticsHealthChecksEntityFrameworkCorePackageVersion)\" /> <PackageVersion Include=\"Microsoft.Extensions.Diagnostics.HealthChecks\" Version=\"$(MicrosoftExtensionsDiagnosticsHealthChecksPackageVersion)\" /> <PackageVersion Include=\"Microsoft.Extensions.Features\" Version=\"$(MicrosoftExtensionsFeaturesPackageVersion)\" /> <!-- AspNetCore.HealthChecks dependencies (3rd party packages) --> <PackageVersion Include=\"AspNetCore.HealthChecks.Azure.Data.Tables\" Version=\"8.0.1\" /> <PackageVersion Include=\"AspNetCore.HealthChecks.Azure.KeyVault.Secrets\" Version=\"8.0.1\" /> <PackageVersion Include=\"AspNetCore.HealthChecks.Azure.Storage.Blobs\" Version=\"8.0.1\" /> <PackageVersion Include=\"AspNetCore.HealthChecks.Azure.Storage.Queues\" Version=\"8.0.1\" /> <PackageVersion Include=\"AspNetCore.HealthChecks.AzureServiceBus\" Version=\"8.0.1\" /> <PackageVersion Include=\"AspNetCore.HealthChecks.Kafka\" Version=\"8.0.1\" /> <PackageVersion Include=\"AspNetCore.HealthChecks.MongoDb\" Version=\"8.0.1\" /> <PackageVersion Include=\"AspNetCore.HealthChecks.MySql\" Version=\"8.0.1\" /> <PackageVersion Include=\"AspNetCore.HealthChecks.NpgSql\" Version=\"8.0.1\" /> <PackageVersion Include=\"AspNetCore.HealthChecks.Rabbitmq\" Version=\"8.0.1\" /> <PackageVersion Include=\"AspNetCore.HealthChecks.Redis\" Version=\"8.0.1\" /> <PackageVersion Include=\"AspNetCore.HealthChecks.SqlServer\" Version=\"8.0.2\" /> <!-- efcore dependencies --> <PackageVersion Include=\"Microsoft.EntityFrameworkCore.Cosmos\" Version=\"$(MicrosoftEntityFrameworkCoreCosmosPackageVersion)\" /> <PackageVersion Include=\"Microsoft.EntityFrameworkCore.SqlServer\" Version=\"$(MicrosoftEntityFrameworkCoreSqlServerPackageVersion)\" /> <PackageVersion Include=\"Microsoft.EntityFrameworkCore.Tools\" Version=\"$(MicrosoftEntityFrameworkCoreToolsPackageVersion)\" /> <PackageVersion Include=\"Microsoft.EntityFrameworkCore.Design\" Version=\"$(MicrosoftEntityFrameworkCoreDesignPackageVersion)\" /> <!-- runtime dependencies--> <PackageVersion Include=\"Microsoft.Extensions.Configuration.Abstractions\" Version=\"$(MicrosoftExtensionsConfigurationAbstractionsPackageVersion)\" /> <PackageVersion Include=\"Microsoft.Extensions.Configuration.Binder\" Version=\"$(MicrosoftExtensionsConfigurationBinderPackageVersion)\" /> <PackageVersion Include=\"Microsoft.Extensions.DependencyInjection.Abstractions\" Version=\"$(MicrosoftExtensionsDependencyInjectionAbstractionsPackageVersion)\" /> <PackageVersion Include=\"Microsoft.Extensions.Hosting.Abstractions\" Version=\"$(MicrosoftExtensionsHostingAbstractionsPackageVersion)\" /> <PackageVersion Include=\"Microsoft.Extensions.Hosting\" Version=\"$(MicrosoftExtensionsHostingPackageVersion)\" /> <PackageVersion Include=\"Microsoft.Extensions.Http\" Version=\"$(MicrosoftExtensionsHttpPackageVersion)\" /> <PackageVersion Include=\"Microsoft.Extensions.Logging.Abstractions\" Version=\"$(MicrosoftExtensionsLoggingAbstractionsPackageVersion)\" /> <PackageVersion Include=\"Microsoft.Extensions.Options\" Version=\"$(MicrosoftExtensionsOptionsPackageVersion)\" /> <PackageVersion Include=\"Microsoft.Extensions.Primitives\" Version=\"$(MicrosoftExtensionsPrimitivesPackageVersion)\" /> <PackageVersion Include=\"Microsoft.Extensions.Http.Resilience\" Version=\"$(MicrosoftExtensionsHttpResiliencePackageVersion)\" /> <PackageVersion Include=\"Microsoft.Extensions.TimeProvider.Testing\" Version=\"$(MicrosoftExtensionsTimeProviderTestingVersion)\" /> <!-- external dependencies --> <PackageVersion Include=\"Confluent.Kafka\" Version=\"2.4.0\" /> <PackageVersion Include=\"Dapper\" Version=\"2.1.44\" /> <PackageVersion Include=\"DnsClient\" Version=\"1.8.0\" /> <PackageVersion Include=\"Google.Protobuf\" Version=\"3.27.1\" /> <PackageVersion Include=\"Grpc.AspNetCore\" Version=\"2.63.0\" /> <PackageVersion Include=\"Grpc.Net.ClientFactory\" Version=\"2.63.0\" /> <PackageVersion Include=\"Grpc.Tools\" Version=\"2.64.0\" /> <PackageVersion Include=\"Humanizer.Core\" Version=\"2.14.1\" /> <PackageVersion Include=\"KubernetesClient\" Version=\"14.0.2\" /> <PackageVersion Include=\"Microsoft.Data.SqlClient\" Version=\"5.2.1\" /> <PackageVersion Include=\"Microsoft.FluentUI.AspNetCore.Components\" Version=\"4.7.2\" /> <PackageVersion Include=\"Microsoft.FluentUI.AspNetCore.Components.Icons\" Version=\"4.7.2\" /> <PackageVersion Include=\"Milvus.Client\" Version=\"2.3.0-preview.1\"/> <PackageVersion Include=\"MongoDB.Driver\" Version=\"2.27.0\" /> <PackageVersion Include=\"MongoDB.Driver.Core.Extensions.DiagnosticSources\" Version=\"1.4.0\" /> <PackageVersion Include=\"MySqlConnector.DependencyInjection\" Version=\"2.3.6\" /> <PackageVersion Include=\"MySqlConnector.Logging.Microsoft.Extensions.Logging\" Version=\"2.1.0\" /> <PackageVersion Include=\"NATS.Net\" Version=\"2.3.0\" /> <PackageVersion Include=\"Npgsql.DependencyInjection\" Version=\"8.0.3\" /> <PackageVersion Include=\"Npgsql.EntityFrameworkCore.PostgreSQL\" Version=\"8.0.4\" /> <PackageVersion Include=\"Oracle.EntityFrameworkCore\" Version=\"8.23.40\" /> <PackageVersion Include=\"Polly.Core\" Version=\"8.4.1\" /> <PackageVersion Include=\"Polly.Extensions\" Version=\"8.4.1\" /> <PackageVersion Include=\"Pomelo.EntityFrameworkCore.MySql\" Version=\"8.0.2\" /> <PackageVersion Include=\"Qdrant.Client\" Version=\"1.10.0\" /> <PackageVersion Include=\"RabbitMQ.Client\" Version=\"[6.8.1,7.0.0)\" /> <PackageVersion Include=\"StackExchange.Redis\" Version=\"2.8.0\" /> <PackageVersion Include=\"System.IO.Hashing\" Version=\"8.0.0\" /> <PackageVersion Include=\"Yarp.ReverseProxy\" Version=\"2.1.0\" /> <!-- Open Telemetry --> <PackageVersion Include=\"Npgsql.OpenTelemetry\" Version=\"8.0.3\" /> <PackageVersion Include=\"OpenTelemetry.Exporter.InMemory\" Version=\"1.9.0\" /> <PackageVersion Include=\"OpenTelemetry.Exporter.OpenTelemetryProtocol\" Version=\"1.9.0\" /> <PackageVersion Include=\"OpenTelemetry.Extensions.Hosting\" Version=\"1.9.0\" /> <PackageVersion Include=\"OpenTelemetry.Instrumentation.GrpcNetClient\" Version=\"1.9.0-beta.1\" /> <PackageVersion Include=\"OpenTelemetry.Instrumentation.Http\" Version=\"1.9.0\" /> <PackageVersion Include=\"OpenTelemetry.Instrumentation.AspNetCore\" Version=\"1.9.0\" /> <PackageVersion Include=\"OpenTelemetry.Instrumentation.Runtime\" Version=\"1.9.0\" /> <!-- build dependencies --> <PackageVersion Include=\"MicroBuild.Plugins.SwixBuild.Dotnet\" Version=\"1.1.87-gba258badda\" /> <PackageVersion Include=\"Microsoft.CodeAnalysis.CSharp.Workspaces\" Version=\"4.10.0\" /> <PackageVersion Include=\"Microsoft.CodeAnalysis.PublicApiAnalyzers\" Version=\"3.3.4\" /> <PackageVersion Include=\"Microsoft.DotNet.Build.Tasks.Workloads\" Version=\"8.0.0-beta.23564.4\" /> <PackageVersion Include=\"Microsoft.Signed.Wix\" Version=\"$(MicrosoftSignedWixVersion)\" /> <PackageVersion Include=\"Microsoft.DotNet.Build.Tasks.Installers\" Version=\"8.0.0-beta.23564.4\" /> <PackageVersion Include=\"System.CommandLine\" Version=\"2.0.0-beta4.24324.3\" /> <!-- unit test dependencies --> <PackageVersion Include=\"bUnit\" Version=\"1.28.9\" /> <PackageVersion Include=\"JsonSchema.Net\" Version=\"7.1.2\" /> <PackageVersion Include=\"Microsoft.DotNet.RemoteExecutor\" Version=\"$(MicrosoftDotNetRemoteExecutorPackageVersion)\" /> <PackageVersion Include=\"Microsoft.DotNet.XUnitExtensions\" Version=\"$(MicrosoftDotNetXUnitExtensionsPackageVersion)\" /> <PackageVersion Include=\"Microsoft.Extensions.Diagnostics.Testing\" Version=\"$(MicrosoftExtensionsDiagnosticsTestingPackageVersion)\" /> <PackageVersion Include=\"Microsoft.NET.Runtime.WorkloadTesting.Internal\" Version=\"$(MicrosoftNETRuntimeWorkloadTestingInternalVersion)\" /> <PackageVersion Include=\"Microsoft.Playwright\" Version=\"1.45.0\" /> <PackageVersion Include=\"Swashbuckle.AspNetCore\" Version=\"6.6.2\" /> <PackageVersion Include=\"Testcontainers.MongoDb\" Version=\"$(TestcontainersPackageVersion)\" /> <PackageVersion Include=\"Testcontainers.MsSql\" Version=\"$(TestcontainersPackageVersion)\" /> <PackageVersion Include=\"Testcontainers.MySql\" Version=\"$(TestcontainersPackageVersion)\" /> <PackageVersion Include=\"Testcontainers.PostgreSQL\" Version=\"$(TestcontainersPackageVersion)\" /> <PackageVersion Include=\"Testcontainers.RabbitMq\" Version=\"$(TestcontainersPackageVersion)\" /> <PackageVersion Include=\"Testcontainers.Redis\" Version=\"$(TestcontainersPackageVersion)\" /> <PackageVersion Include=\"Testcontainers.Nats\" Version=\"$(TestcontainersPackageVersion)\" /> <PackageVersion Include=\"Testcontainers.Milvus\" Version=\"$(TestcontainersPackageVersion)\" /> <!-- playground apps dependencies --> <PackageVersion Include=\"Dapr.AspNetCore\" Version=\"1.13.1\" /> <PackageVersion Include=\"Microsoft.Orleans.Clustering.AzureStorage\" Version=\"8.2.0\" /> <PackageVersion Include=\"Microsoft.Orleans.Persistence.AzureStorage\" Version=\"8.2.0\" /> <PackageVersion Include=\"Microsoft.Orleans.Client\" Version=\"8.2.0\" /> <PackageVersion Include=\"Microsoft.Orleans.Server\" Version=\"8.2.0\" /> <PackageVersion Include=\"Microsoft.Orleans.Sdk\" Version=\"8.2.0\" /> <!-- Pinned version for Component Governance - Remove when root dependencies are updated --> <PackageVersion Include=\"Newtonsoft.Json\" Version=\"13.0.3\" /> </ItemGroup> </Project>"

Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for SED, please visit: https://www.gnu.org/software/sed/manual/html_node/The-_0022s_0022-Command.html