Php 特殊出现的4个字母单词的正则表达式

Php 特殊出现的4个字母单词的正则表达式,php,regex,Php,Regex,我对正则表达式感兴趣,因为它可以找到以下模式 I或E代表第一个字母,N或S代表第二个字母,F或T代表第三个字母,J或p代表第四个字母 这将识别ISTJ、ESTP、ENTP,但不识别EJPT 谢谢应该很简单,使用:[IE][NS][FT][JP] 总而言之:\b[IE][NS][FT][JP]\b 整个输入:^[IE][NS][FT][JP]$ 工作示例: PHP代码示例: $ptn = "/[IE][NS][FT][JP]/"; // use "/[IE][NS][FT][JP]/i" to i

我对正则表达式感兴趣,因为它可以找到以下模式

I或E代表第一个字母,N或S代表第二个字母,F或T代表第三个字母,J或p代表第四个字母

这将识别ISTJ、ESTP、ENTP,但不识别EJPT

谢谢

应该很简单,使用:[IE][NS][FT][JP]

总而言之:\b[IE][NS][FT][JP]\b 整个输入:^[IE][NS][FT][JP]$

工作示例:

PHP代码示例:

$ptn = "/[IE][NS][FT][JP]/"; // use "/[IE][NS][FT][JP]/i" to ignore case
$str = "ISTJ, ESTP,ENTP but not EJPT";
preg_match_all($ptn, $str, $matches);