首页 > 解决方案 > 匹配字符串末尾的模式

问题描述

我正在尝试将以下模式匹配为字符串。

[任何字母数字][0 个或多个字符][(一个或多个数字 - 一个或多个数字)OR*]

正确的字符串 - sensor1-2、s1-2、s*、s_s*
错误的字符串 - sensor1、s1-、*s1-3

我尝试了该模式^\w.*[(\d+-\d+)\*]$但它匹配像sensor1这样的字符串。任何想法都会有所帮助。我打算从 C# 中使用它。

标签: c#regex

解决方案


您还应该删除方括号并在其中放置一个 or ( |) 以匹配 * 大小写:

(\d+-\d+|\*)

编辑现有表达式,您将获得:

^\w.*(\d+-\d+|\*)$

在线尝试


推荐阅读