匹配包含*N*次某个字母的单词

gin*_*nos 4 regex matlab

我试图匹配包含N次字母的单词(使用MATLAB的正则表达式),并且我并不是说只找到重复的字母,我可以这样做:

\w*(\w)\1\w*
Run Code Online (Sandbox Code Playgroud)

一个简单的例子是找到以下正则表达式:匹配包含字母a的3倍的单词.如果给定的字符串是:

喂b 一个 Ñ 一个 Ñ 一个阿拉巴马俄克拉荷马Ç 一个 Ñ AA Ñ

然后匹配的单词应该是:

香蕉迦南.所有其他包含更少或更多a.

感谢任何帮助谢谢.

vks*_*vks 6

\b(?:[^a\s]*a){3}[^a\s]*\b
Run Code Online (Sandbox Code Playgroud)

试试这个.看看演示.

https://regex101.com/r/sJ9gM7/10

  • @knedlsepp稍加修改就可以了.你只需要替换单词`\ b`的开头字符.以下应该有效:`\ <(?:[^ 0\s]*0){5} [^ 0\s]*\>` (3认同)