我有一个用PHP编写的系统,它将来自多个数据库的记录聚合到一个数据库中。执行此操作时,我需要检测每条记录是否为ABNORMAL
,如果是,则将其标记为是。
为此,我需要preg_match()
的模式,因此如果给定的字符串包含单词NORMAL
但不包含ABNORMAL
,则返回false。给出的字符串可能是多行。
我遇到的问题是ABNORMAL
这个词包含这个词NORMAL
。
有人可以帮忙吗?
答案 0 :(得分:3)
使用边界字\b
:
preg_match("|\bNORMAL\b|", $subject);
请注意,它区分大小写,不区分大小写的版本为:
preg_match("|\bNORMAL\b|i", $subject);
虽然如果您可以控制数据库,但您可能希望使用0和1(或至少N和A)而不是NORMAL和ABNORMAL。