正则表达式:匹配某些字符或没有字符

时间:2016-04-04 23:13:19

标签: regex

我希望字符串可以是“abc”,“adc”或“ac”。怎么说正则表达式?

2 个答案:

答案 0 :(得分:2)

您可以使用|(OR)运算符,如下所示:

abc|adc|ac

相当于说选择abc或adc或ac

您可以使用RegExrRegex101等工具来测试您的RegEx

Live Demo on Regex101

还有一个聪明的做法,那就是更短。由于所有3个字符串都以a开头,因此RegEx的第一部分将为a。它们都以c结尾,因此最后一部分将是c

现在中间字母是bd。您可以使用(b|d),也可以使用较短的[bd](这意味着相同的事情)。您可以使用?表明中间字母是可选的。

所以你的完整RegEx将是:

a[bd]?c

Live Demo on Regex101

答案 1 :(得分:1)

你可以这么简单:

abc|adc|ac

或更'先进'的方式:

a[bd]?c

两者都应该有用。