我正在尝试使用preg_match来获取某人的名字,但如果他们说“我的名字不是那么......”,我不希望它得到他们的名字,但我很难找到匹配它:
$string = "my name is james";
preg_match("~my name is (?>!\bnot\b)[a-z]+~", $string, $match);
print_r($match);
由于我的原始字符串中没有单词“not”,所以它应该匹配字符串,但它没有。我做错了什么?
结果:
Array()
预期结果:
数组(我的名字是詹姆斯)