如何使用正则表达式从列表中排除名称?
数据:
$subject=
"Damon Carson Stovall,
Bret Roman Mikulak,
Jack Filiberto Quirke,
Elroy Forrest Jarnagin,
Ulysses Wiley Cregger,
Brent Greg Jonah,
Bret Armand Daylong,
Ned Numbers Vandell,
Bret Alden Cutlip,
Bret Chung Markie,";
正则表达式:
// Select anyone with the first name of Bret
$pattern = "/Bret /";
我当前的解决方案:
// Loop through & Skip any line that matches Bret.
$subject_array = explode(",",$subject);
foreach($subject_array as $line)
if(!preg_match($pattern, $line))
echo "$line<br>";
最佳答案
是的,您可以选择名称中没有 Bret
的行
/^(?!Bret\b).*$/im
i
是忽略大小写选项
m
是多行选项
^
描述字符串的开头
\b
描述非单词边界
(?!Bret\b)
是一个负向前瞻
因此,仅当前瞻为真时,^(?!Bret\b).*$
才会选择 .*
字符串...即,如果字符串不'以 Bret
开头!
关于php - 使用正则表达式从列表中排除名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13750571/