您的位置: 首页 > 技术问答 > 排除RegEx中的模式 排除RegEx中的模式 分类: 技术问答 • 2022-09-07 18:54:11 问题描述: 我希望RegEx匹配任何十六进制数字,但是7E和7D。排除RegEx中的模式 要匹配任何十六进制数,我使用[0-9A-F]{2}。我现在如何排除未经破解的数字? +1 大多数引擎或程序都有某种“不”功能,它比正则表达式匹配一切'但是'更有效。 我建议你先看看,然后用复杂的东西来描述。在答案中。 – AoeAoe 2012-03-15 17:03:03 答 您可以使用在7E或7D上失败的负面预测。以下模式使用^和$来匹配整个字符串,而不是字符串中的部分匹配。 ^(?!7[ED])[0-9A-F]{2}$ +0 感谢这工作。我不需要'^'和'$',因为我使用RegEx作为用TinyPG生成的解析器中的终端。 – woodtluk 2012-03-15 17:32:28 +0 @ user1272072如果这回答你的问题,然后[接受](http://meta.stackexchange.com/q/5234/146395)的答案。 – Alex 2012-03-15 18:36:25 答 你可以使用这样的事情: [0-68-F][0-F] || 7[0-CF] (该||可能无法正常工作,这取决于你使用这个表达式,你没有指定你的问题) +0 这没有奏效。我正在使用C#和TinyPG。不管怎么说,还是要谢谢你。 – woodtluk 2012-03-15 17:28:01 答 [0-9A-F&&[^7]][0-9A-F&&[^DE]] +0 我没有工作。我认为这将忽略任何具有第一个数字7和第二个数字D od E.的十六进制数字。 – woodtluk 2012-03-15 17:29:55
大多数引擎或程序都有某种“不”功能,它比正则表达式匹配一切'但是'更有效。 我建议你先看看,然后用复杂的东西来描述。在答案中。 – AoeAoe 2012-03-15 17:03:03