正则表达式\ b后面是Keyboard Maestro中的符号

时间:2017-11-15 16:49:37

标签: regex keyboard-maestro

我确信这有一个非常简单的答案,但我找不到它!

在Keyboard Maestro中,我试图将触发器设置为分号的正则表达式,后跟几个字符之一,如下所示:

;[.,\s]

当我这样说的时候,它可以工作,但我只想在分号独立时(在句子的开头或空格后)触发触发器。我认为这可以解决问题:

\b;[,.\s]

...但是当我把边界字符放入时,它不起作用。我究竟做错了什么?谢谢!

(我应该补充一点,当后面跟着一个字母数字字符时,边界字符工作正常,所以它似乎只是一个符号问题)

1 个答案:

答案 0 :(得分:1)

你应该使用相反的结构,因为空格或字符串的开头和分号之间没有单词边界:

\B;[,.\s]
^^

此处,\B是一个非字边界,匹配word boundary不匹配的所有位置。在这种特定情况下,如果前面带有非单词字符(除字母之外的任何字符),;将匹配字符串开头的 / digit / _并且,根据正则表达式库,其他(非常罕见的)字符被认为是"字"字符。