我創建了以下正則表達式模式,試圖匹配以「PRI」或「SEC」結尾的長度爲6個字符的字符串,除非字符串=「SIGSEC」。例如,我想匹配ABCPRI,XYZPRI,ABCSEC和XYZSEC,但不匹配SIGSEC。只有在前面沒有特定字符的情況下,我如何匹配部分字符串?
(\w{3}PRI$|[^SIG].*SEC$)
這是非常接近和排序作品(如果我通過在「SINSEC」,它返回的「南北經濟走廊」部分匹配),但我沒有在其目前的形式,關於它的美好的感覺。另外,我可能需要在「SIG」之後添加更多排除,並意識到這可能不會太好。有任何想法嗎?
順便說一句,我使用System.Text.RegularExpressions.Regex.Match()在C#
感謝, 豐富
.NET正則表達式支持負向lookaheads,所以這將工作 – Charlie 2008-10-16 02:54:00
啊,很高興知道,謝謝查理。我真的不是一個.NET的傢伙;) – Dan 2008-10-16 02:54:07
這完美的作品丹,謝謝!做一個快速測試,添加額外的排除比賽將是微不足道的。 – Rich 2008-10-16 02:58:02