emacs:regexp匹配以从字符串中提取数字

emacs:regexp匹配以从字符串中提取数字,regex,emacs,Regex,Emacs,我尝试只匹配以下字符串后的数字: sequentialGrid: 650274 parallelGrid: 650274 我的目标是通过M-x highlight regexp在以sequentialGrid:和parallelGrid:开头的行之后突出显示数字 以下是我的尝试,使用类似Perl的方法: ^sequentialGrid: \([0-9]*\).*/$1/ 不幸的是,Emacs不支持Perl功能。因此,我希望我的要求不是不可能的,或者有人可以提供一个方便的解决办法 顺便说一句,

我尝试只匹配以下字符串后的数字:

sequentialGrid: 650274
parallelGrid: 650274
我的目标是通过
M-x highlight regexp
在以
sequentialGrid:
parallelGrid:
开头的行之后突出显示数字

以下是我的尝试,使用类似Perl的方法:

^sequentialGrid: \([0-9]*\).*/$1/
不幸的是,Emacs不支持Perl功能。因此,我希望我的要求不是不可能的,或者有人可以提供一个方便的解决办法


顺便说一句,我验证了
^sequentialGrid:\([0-9]*\).
高亮显示了整行。我只需要提取数字。

如果您的目标是添加字体锁定突出显示,则以下表达式将起作用:

(font-lock-add-keywords 
 nil
 '(("^\\(parallel\\|sequential\\)Grid:\\s-*\\([0-9]+\\)"
    2 font-lock-warning-face)))

将其中的
nil
MODE参数添加到当前缓冲区,也可以将模式名称指定为符号。有关
字体锁定添加关键字
字体锁定删除关键字

从未使用过emacs的详细信息,请参阅和,但要执行您所描述的操作,请使用积极的后视:例如
(?不,它不起作用。我认为emacs的regexp缺少其中一些功能。我想知道是否有一种在不牺牲便利性的情况下的解决方法?哦……你能使用像
(?:sequentialGrid:\s)[0-9]+
?对不起,把数字位也放在括号中以捕获该组:
(?:sequentialGrid:\s)([0-9]+)
仍然不起作用。我发现可以在emacs中使用Perl,但据我所知,emacs不支持PCRE。我仍然希望找到一个简单的解决方案(如果存在的话)。