如何匹配AOrBOrCOrDOrE之类的东西

时间:2014-08-31 08:58:06

标签: php regex

我有这样一句话:“AOrbOrCOrDOreOrdOr ......”。我试图匹配所有单词,如“ A ”,“ b ”,“ C ”等等。但是,它只返回“ A ”,“ bOr ”,“ cOr ”,...这是我的模式:{{1} }。 我对正则表达非常新。请帮我。先谢谢!

3 个答案:

答案 0 :(得分:5)

使用正则表达式的另一种方法是使用explode()

$string = 'AOrbOrCOrDOreOrdOr...';
$words = explode('Or', $string);

请注意,如果您使用的是常量分隔符,例如Or,则可以使用explode(),这比使用正则表达式更快。<​​/ p>

答案 1 :(得分:0)

只需在正则表达式中使用前瞻以匹配字符串Or后面的所有字母,

[A-Za-z](?=Or)

DEMO

如果您想匹配字符串Or后跟的任何字符,那么您可以使用.代替[A-Za-z]

.(?=Or)

DEMO

答案 2 :(得分:0)

你可以使用爆炸功能:

$text  = "AOrbOrCOrDOreOrdOr...";
$array = explode('Or', $text);

然后你现在有一个包含部分的数组:

array("A", "b", "C", "D", "e",) // ...and so on