如何编写正则表达式模式以获得匹配的字符串
本文关键字:字符串 何编写 正则表达式 模式 | 更新日期: 2023-09-27 17:58:49
我正在为下面的字符串编写正则表达式模式。我使用下面的模式来获得匹配的字符串。但是,我弄错了。
注意:输入字符串可以是以下输入字符串中的任何一个。
string input = "IN-7874 - hello";
// or "IN-7874 - Hello"
// "IN-7874 - 1) hello"
// "IN-7874 - 1. hello"
// "IN-7874 - 1)hello"
// "IN-7874 - 1.hello"
string pattern = @"^[A-Z]+''-^[0-9]'s+''-''s+^[A-Z]"; //[any number of capital letters]hyphen[any number of numbers(0-9)]space[hyphen]space[numbers or strings]
var a = Regex.Match(input, pattern);
有人能帮我吗?
我的输出应该是[任意数目的大写字母]连字符[任意数的数字(0-9)]空格[连字符]空格的模式形式
示例:{SAM-123-}//不要考虑大括号。
您可以使用
^[A-Z]+-[0-9]+'s+-'s+(?:[0-9]+[.)]'s*)?[A-Za-z]+
查看regex演示
解释:
^
-字符串的开头[A-Z]+
-1个或多个大写ASCII字母-
-连字符[0-9]+
-1个或多个数字's+
-1+空白-
-连字符's+
-见上文(?:[0-9]+[.)]'s*)?
-可选序列:[0-9]+
-1+位[.)]
-文字.
或)
's*
-0+空白
[A-Za-z]+
-1个或多个ASCII字母