如何表达不接受任何内容的正则表达式

时间:2018-10-05 17:52:25

标签: regex

我被要求写一个接受另一个给定正则表达式的补码的正则表达式:

<Route exact path='/a' component={A} />
<Route path='/b' component={B} />

// Following should be router inside Component B
<Route exact path='/b/abc' component={OtherComponent}

此正则表达式似乎接受由{a,b}组成的字母表中的每个字符串,因此我认为其补语必须完全不接受该字母表中的任何字符串。

如何将其表示为正则表达式?有可能吗?

1 个答案:

答案 0 :(得分:0)

对于rm -rf node_modules/ rm -rf ~/.npm npm cache verify npm install 的补码,最简单的答案似乎是(a*b*)*(意味着:包含既不是.*[^ab].*也不是a的字符的字符串)。只要字母只是{a,b}或有更多字符,它都可以使用。

要表达通常不匹配的正则表达式,b(表示“字符串末尾有字符串”)是一个不错的选择。或$.,在某些实现中性能可能更高。