簡體   English   中英

PHP正則表達式-檢測字符串是否包含單詞但不在另一個單詞之內

[英]PHP Regular Expression - Detect if string contains a word but not within another

我有一個用PHP編寫的系統,它將來自多個數據庫的記錄聚合到一個數據庫中。 這樣做時,我需要檢測每個記錄是否ABNORMAL ,如果是,請將其標記為ABNORMAL

為此,我需要一個preg_match()模式,因此,如果給定的字符串包含單詞NORMAL而不是ABNORMAL ,它將返回false。 給定的字符串可能跨越多行。

我遇到的問題是單詞ABNORMAL 包含單詞NORMAL

有人可以幫忙嗎?

使用單詞邊界字符\\b

preg_match("|\bNORMAL\b|", $subject);

請注意,它區分大小寫,不區分大小寫的版本是這樣的:

preg_match("|\bNORMAL\b|i", $subject);

盡管如果您可以控制數據庫,則可能要使用0和1(或至少N和A)而不是NORMAL和ABNORMAL。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM