【发布时间】:2012-08-28 11:29:17
【问题描述】:
我正在尝试匹配除以 .bmp 结尾的所有文件。
由于某些限制,我不能使用否定 (?:, !:) 和引用 (\1, ...)。
我已经做了一个表达式,它适用于大多数字符串:
^\w+\.([^b].*|b|b[^m].*|bm|bm[^p].*|bmp.+)$
它匹配不以 .bmp 结尾的所有内容 - 包括 test.txt、test.bmp.txt 等。 但不幸的是,它确实允许 test.bi.bmp。
知道如何改进正则表达式,使其只匹配不以 .bmp 结尾的文件吗?
【问题讨论】:
-
出于好奇,这些限制是什么?
-
还有其他应用程序在目标机器上使用正则表达式引擎,并且由于某些原因(我不完全了解,但我想这可能与性能、与某些东西的兼容性或速度有关) 正则表达式引擎是在没有它的情况下专门编译的... :-(
标签: regex regex-negation