对于那些比我自己更擅长正则表达的人来说,这可能是一个快速的解决方案,但基本上我正在尝试的是采用一种语言光泽(如下所示)
E Q that.thing.IN何时存在LOC?
并拉出所有完全是大写的部分并将它们放入一个数组中。我已经使用了:
preg_match_all("|[A-Z]|U",$text,$GLOSSES,PREG_PATTERN_ORDER);
但这会产生如下数组:
E, Q, I, N, L, O, C
我需要的是:
E, Q, IN, LOC
任何人都可以帮忙吗? :)
非常感谢!
答案 0 :(得分:1)
使用世界边界元词量\b
来确定单词
正则表达式将是
\b[A-Z]+\b
确保正则表达式在大写单词的两端以字边界\b
绑定
preg_match_all("\b[A-Z]+\b",$text,$GLOSSES,PREG_PATTERN_ORDER);
将输出
E, Q, IN, LOC