我有我的用户定义字符串匹配输入字符串,我想简化定义字符串,所以我的用户不需要知道正则表达式内部。如何用AND运算符编写正则表达式?
我的想法是让*/-7721/-7722/-7723
匹配任何给定的4位字符串,它是not 7721 AND not 7722 AND not 7723
。
我正在寻找一个正则表达式来执行上述输入字符串,这是一个4位数字。
我尝试过使用?!
表示法,但它不能错误地匹配整个字符串。
(?![0-9]{4})
- 这不允许任何4位数的字符串。
((?!(7721))(?!(7722))(?!(77223))
- 这也没有工作
有AND运算符来执行上述?
感谢,
在其编程语言?既然这些都是数字,你可以使用数学,而不是字符串操作? – Johnsyweb 2012-02-06 13:33:01
@Johnsyweb:实际上是C++ boost正则表达式。让我更新我的标签。我如何使用数学? (抱歉问)? – NirMH 2012-02-06 13:34:06
?=也许? http://stackoverflow.com/questions/469913/regular-expressions-is-there-an-and-operator – Tim 2012-02-06 13:34:50