正则表达式,匹配部分单词后与外卡

时间:2015-06-26 23:35:15

标签: php regex

让我先说一下,我严厉地吮吸正则表达式,我可能会在我的生命中使用它4-5次。

假设我有以下数组:

$array = array(
    1 => 'ReactorCraft:reactorcraft_block_modelreactor', 
    2 => 'f5b2289c-c1aa-4498-9673-271be0aada6c',
    3 => 'A word'
)

我想对每个元素(已经处理过)执行preg_match,其模式将匹配ReactorCraft,只有那个,然后是什么,我我并不特别关心接下来会发生什么,我只对ReactorCraft这个词感兴趣。

我尝试过一种非常简单,可能是错误的模式:

'/[^ReactorCraft*]/i'

'/[\\bReactorCraft\\b]/i'

关于正则表达式的所有知识。

任何朝着正确方向的推动都不仅仅是值得赞赏的。

2 个答案:

答案 0 :(得分:0)

将特定字符串与Regex匹配似乎更简单:

preg_match("/ReactorCraft/u", $searchText)

基本上匹配它。如果你想确定它在句子的前面:

preg_match("/^ReactorCraft/u", $searchText)

你可能想要考虑更快的strstr和strpos。

答案 1 :(得分:0)

这将匹配&#34; ReactorCraft之后的所有内容:&#34; Regex = "/(?<=ReactorCraft:).*/"