如何匹配不是partners
的字符串?如何匹配任何东西除了这个字符串?
这里是我有一个相匹配的合作伙伴:
/^partners$/i
我试过以下,以不匹配的合作伙伴,但似乎并没有工作:
/^(?!partners)$/i
如何匹配不是partners
的字符串?如何匹配任何东西除了这个字符串?
这里是我有一个相匹配的合作伙伴:
/^partners$/i
我试过以下,以不匹配的合作伙伴,但似乎并没有工作:
/^(?!partners)$/i
你的正则表达式
/^(?!partners)$/i
只匹配空行,因为您没有在预见声明中包含行结束锚。 Lookaheads就是这么做的 - 它们“向前看”而没有真正匹配任何字符,因此只有符合正则表达式^$
的行才会成功。
这会工作:
/^(?!partners$)/i
此报告一个匹配任何字符串(或者,因为我们在这里红宝石,在多行字符串的任何行),这是从partners
不同。请注意,它只与行首的空字符串相匹配。这足以用于验证目的,但匹配结果将是""
(而不是nil
,如果匹配失败,您将得到该结果)。
例如,在Java :
!"partners".equalsIgnoreCase(aString)
不容易,但与展望未来的运营商,它可以。 这里红宝石正则表达式
^((?!partners).)*$
干杯
这匹配任何不包含*'伙伴'的字符串,这可能不是雅各想要的。至少这不是他要求的。 – 2011-12-28 22:25:35
如果你只是想获得一个真正的价值时,字符串不是partners
那么就没有必要使用正则表达式,你可以只使用一个字符串比较(而忽略案件)。
如果你因为某些原因需要为不包含partners
任何字符串积极的正则表达式匹配(如果它是例如较大的正则表达式的一部分),你可以使用几种不同的结构,如:
`^(?:(?!partners).)*$`
或
^(?:[^p]+|p(?!artners))*$
我不知道。但是,你不能仅仅反转你使用的任何正则表达式函数返回的结果吗? – 2011-12-28 22:06:18
用什么编程语言? – 2011-12-28 22:09:13
红宝石........... – Jacob 2011-12-28 22:10:38