我试图做的正则表达式将匹配到这一点:正则表达式生成器
Name[0]/Something
或
Name/Something
动词名称和东西将永远知道。 我做了Name[0]/Something
,但我想弥补这方面动词模式在一个正则表达式 我试图sign [0]
作为可选的,但它没有工作:
var regexPattern = "Name" + @"\([\d*\]?)/" + "Something"
你知道一些发电机,我会输入一些动词,它会为我形成模式?
我试图做的正则表达式将匹配到这一点:正则表达式生成器
Name[0]/Something
或
Name/Something
动词名称和东西将永远知道。 我做了Name[0]/Something
,但我想弥补这方面动词模式在一个正则表达式 我试图sign [0]
作为可选的,但它没有工作:
var regexPattern = "Name" + @"\([\d*\]?)/" + "Something"
你知道一些发电机,我会输入一些动词,它会为我形成模式?
你接近,正则表达式Name(\[\d+\])?\/Something
会做。
我认为这是你在找什么:
Name(\[\d+\])?\/Something
名称 litteral
([\ d +])?支架可选之间的数字(1个或多个数字)1或0次
/东西东西litteral
那么括号内多一个数字怎么样? –
@AndriiLitvinov你在'd'后面加了一个'+',表示这个字符(数字)为'1或更多' –
是的,我想字符串表示索引访问,它可以是一个数字。 –
var string = 'Name[0]/Something';
var regex = /^(Name)(\[\d*\])?\/Something$/;
console.log(regex.test(string));
string = 'Name/Something';
console.log(regex.test(string));
你已经试过错这个模式:\([\d*\]?)/
无需(
前使用\
(在这种情况下)
?
]
后意思是:chara CTER ]
零次或一次
所以,如果你想要的图案[...]
显示零次或一次,你可以尝试:(\[\d*\])?
希望这有助于!
如果括号内没有数字,结果是否正确? –
@AndriiLitvinov也许是错误的,但这个问题没有提到。 – Vayne
问题出现在'(')之前的模式中。
这里是你需要的东西:
var str = "Name[0]/Something or Name/Something";
Regex rg = new Regex(@"Name(\[\d+\])?/Something");
var matches = rg.Matches(str);
foreach(Match a in matches)
{
Console.WriteLine(a.Value);
}
使用此:
Name(\[\d+\])?\/Something
\d+
允许一个或多个数字\[\d+\]
允许内部[
和]
一个或多个数字。因此,这将允许[0]
,[12]
等,但拒绝[]
(\[\d+\])?
允许与括号数字为存在任一零次或一次\/
表示斜线(只有一个)Name
和Something
是字符串文字
您的正则表达式将匹配'Name [0/Something'以及 – degant
@degant,谢谢,忽略了这一点。 –