通过搜索单词词典,我试图找到由子字符串组成的字符串。
首先,查找由字母组成的字符串很简单:
1.[abcdefgjlmnqrsz]+
Above 查找包含上述字母的任何单词或短语。我想弄清楚如何查找由子字符串组成的字符串:
例如 dictionary = ["neon","none","dog","bear","bare"]
正则表达式是:[ar|be|o|ne|n]+
我想找到: NEON ,熊
但是,正则表达式 ex。 2 不正确,因为它找到:neon, noen, bear, bare。
感谢任何帮助
最佳答案
一个字符类匹配一个字符
你在找
\b(?:ar|be|o|ne|n)+\b
请注意,[things]
是一个匹配单个字符的字符类。因此 [ar|be|o|ne|n]
并不代表您的想法:它的意思是“一个字符是 a,r,|,b,e,| ,o,|,n,e,|,n
解释
\b
是一个单词边界,匹配一侧是字母而另一侧不是字母的位置(例如空格字符,或字符串的开头)(?: ... )
是非捕获组|
是交替 (OR) 运算符
关于javascript - 匹配由给定集合中的子串组成的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25046110/