字符串(固定值)+运算符+整数的正则表达式
本文关键字:运算符 整数 正则表达式 字符串 | 更新日期: 2023-09-27 18:07:52
嗨,我想创建一个自定义正则表达式,其中字符串的第一部分必须固定到字符串索引[10]即@SystemDate之后必须有一个运算符+或-之后,我尝试过的两位数整数值,但没有得到它请通过下面的代码并建议我更改
if (Regex.IsMatch(_SelectedSystem, "@SystemDate{1}[+/-]$ {2}[0-9]{2}$"))
{
global::System.Windows.Forms.MessageBox.Show("Test");
}
类似于
@SystemDate[+-]'d{2}$
打破你的匹配:
@SystemDate literally
[+-] match + or -
'd{2} match exactly 2 digits
$ end of string
查看演示:
"(^ @SystemDate $) | ^ @SystemDate [+ | -] {1} ' d + $"
您不应该在字符类中使用|
符号,每个符号都被视为其中的单个字符。
你需要
@"^@SystemDate(?:[+-]'d+)?$"
看到演示
(?:[+-]'d+)?
是一个可选的非捕获组,它可以存在也可以不存在。[+-]
完全匹配1个+
或-