目前在写一个关键字匹配的Js
但是有时候会出现问题
比如我的关键字里面有 in 也有 begin
匹配的规则是有begin的时候就不匹配in
即不匹配子串
为了实现这个效果我修改表达式匹配关键字前后的字符(比如in在Begin中前面就有g,但是关键字前面没字母,我用这种方法来避免匹配子串)
但是问题又来了,我在关键字两旁作标记,也会把后面匹配的东西也包含了进来
比如匹配
begin-nothing-end
关键字为begin
执行后应该是[begin]-nothing-end
但是我的做法就会变成[begin-]nothing-end
请问如何解决?