我希望我的正则表达式在遇到字母后停止匹配长度在2到10之间的数字.

到目前为止,我已经想出了(\d{2,10})(?![a-zA-Z])个这个.但即使遇到字母,它仍会继续匹配.

你能帮忙吗?谢谢

推荐答案

您可以使用以下选项.净正则表达式

(?<=^\P{L}*)(?<!\d)\d{2,10}(?!\d)
(?<=^[^a-zA-Z]*)(?<!\d)\d{2,10}(?!\d)

请参见regex demo.Details:

  • (?<=^\P{L}*)-在字符串开始之前,当前位置不得有任何字母((?<=^[^a-zA-Z]*)仅支持ASCII字母)
  • (?<!\d)-左侧不允许有数字.
  • \d{2,10}-两到十位数
  • (?!\d)-右侧不允许有数字.

Csharp相关问答推荐

AutoMapper -如何为两个不同的用例设置单个映射?

CsWin32如何创建PWSTR的实例,例如GetWindowText

在Linq中调用需要limit和offset的方法''''

EF Core. Income和. AsNoTracking正确用法

C#中使用BouncyCastle计算CMac

在一个模拟上设置一个方法,该模拟具有一个参数,该参数是一个numc函数表达式

从.Net 6 DLL注册和检索COM对象(Typelib导出:类型库未注册.(异常来自HRESULT:0x80131165))

如何在C#中实现非抛出`MinBy`?

如何将端点(或с匹配请求并判断其路径)添加到BCL?

DateTime ToString()未以指定格式打印

是否有必要在ASP.NET Core中注册可传递依赖项?

异步任务调用程序集

Blazor Fluent UI DialogService,<;FluentDialogProvider/>;错误

未在Windows上运行的Maui项目

try 创建一个C#程序,该程序使用自动实现的属性、覆盖ToString()并使用子类

如何将 colored颜色 转换为KnownColor名称?

NETSDK1201:对于面向.NET 8.0和更高版本的项目,默认情况下,指定RUNTIME标识符将不再生成自包含的应用程序

在Unity C#中按键点击错误的参数

如何在JSON:API中定义的&过滤查询参数系列&标准的GET请求中传递多个相关参数?

默认架构不存在EF核心迁移