匹配标识符但不匹配保留关键字的模式



我正在尝试设计与标识符匹配的正则表达式,除非它是保留关键字。
这是我尝试过的:(?!{}(?![_a-zA-Z0-9]))[_a-zA-Z][_a-zA-Z0-9]* {}被类似的东西取代if|else|while.不幸的是,它无法匹配保留关键字开头的任何内容,因此ifa之类的内容不会通过。
如何设计一个合适的正则表达式?

您似乎缺少的部分是单词边界的b。 沿着这些思路应该可以工作:

(?!(if|else|while)b)bw+

相关内容

最新更新