我有一个以分号分隔的单词列表(大约180,000个单词),如下所示:
;test;dog;cat;hello;whatever;
Run Code Online (Sandbox Code Playgroud)
如何使用正则表达式获取包含特定子字符串的所有单词的aray?例如 - 如何让所有单词hat包含字母a?我试过这个:
preg_match_all('#(?:;).*a.*(?:;)#u', $one_line, $matches);
Run Code Online (Sandbox Code Playgroud)
^但它似乎没有产生正确的结果?...我做错了什么?
得到所有单词帽子包含字母a?
使用preg_match_all方法从索引1获取匹配的组.
(\w*a\w*)
Run Code Online (Sandbox Code Playgroud)
如果分号之间有多个单词,请按照以下注释中@ anubhava的建议尝试下面的正则表达式.
[^;a]*a[^;]*
Run Code Online (Sandbox Code Playgroud)