濮阳杆衣贸易有限公司

主頁(yè) > 知識(shí)庫(kù) > php 正則 不包含某字符串的正則表達(dá)式

php 正則 不包含某字符串的正則表達(dá)式

熱門標(biāo)簽:淄博市張店區(qū)地圖標(biāo)注 自己做的電銷機(jī)器人 哈爾濱公司外呼系統(tǒng)代理 浙江營(yíng)銷外呼系統(tǒng)有哪些 地圖標(biāo)注店鋪地圖標(biāo)注酒店 遼寧秒客來(lái)電話機(jī)器人 山東外呼系統(tǒng)聯(lián)系方式 惠安地圖標(biāo)注 上海銷售電銷機(jī)器人軟件

常見函數(shù) strstr($str, “abc”);
正則匹配 preg_match(”/(abc)?/is”, $str);
但是要匹配一個(gè)字符串中,不包含某字符串,用正則就比較麻煩了
如果不用正則 !strstr($str, “abc”); 就可以解決問題了
但是用正則呢,就只有這樣了,”/^((?!abc).)*$/is”
//------------------------------------------------

復(fù)制代碼 代碼如下:

?php
$str = "dfadfadf765577abc55fd";
$pattern_url = "/^((?!abc).)*$/is";
if (preg_match($pattern_url, $str)){
echo "不含有abc!";
}else{
echo "含有abc!";
}
?>

//------------------------------------------------
結(jié)果為:false,含有abc!
$str = “2b3c4d5c”;
注意:[^(abc)] 這個(gè)語(yǔ)法是逐個(gè)檢查$str中的字符是否不在 a b c中,
preg_match(”/[^(abc)]/s”, $str, $arr);
其中字符 2 就不在 a b c 中,所以$arr返回值為2;
同時(shí)匹配,包含字符串 “abc”,而且不包含字符串 “xyz”
“/(abc)[^((?!xyz).)*$]/s”

以下是補(bǔ)充:

判斷一個(gè)字符串中是否含有另一字符串,有很多方法,如下:

1. 常見函數(shù)

strstr($str, "abc");

2. 正則匹配

preg_match("/(abc)/is", $str);

但是要匹配一個(gè)字符串中,不包含某字符串,用正則就比較麻煩了。
1. 如果不用正則如下就可以解決問題

!strstr($str, "abc");

2. 但是用正則呢,就只有這樣了

preg_match("/^((?!abc).)*$/is", $str);

完整代碼示例

復(fù)制代碼 代碼如下:

$str = "dfadfadf765577abc55fd";
$pattern_url = "/^((?!abc).)*$/is";
if (preg_match($pattern_url, $str))
{
echo "不含有abc!";
}
else
{
echo "含有abc!";
}

結(jié)果為:false,含有abc!

同時(shí)匹配,包含字符串 "abc",而且不包含字符串 "xyz"的正則表達(dá)式:

preg_match("/(abc)[^((?!xyz).)*$]/is", $str);

該方法有效,本人使用方法如下:

    (?:(?!\/div>).|\n)*? //匹配不含/div>的一個(gè)字符串

但最終使用中結(jié)果是發(fā)現(xiàn),該方法效率極其低下,在處理非常短文字(要匹配該正則式的相同部分的有十幾個(gè)字,或者最多幾十個(gè))時(shí)間可以考慮使用,但當(dāng)用于大篇幅文章解析或多處需要改種匹配時(shí)間應(yīng)不使用,考慮用其他方法替代(如:先解析出要匹配該段正則式的文字,然后驗(yàn)證其中是否存在某段文字),正則表達(dá)式對(duì)于匹配不含特定字符串的文字段時(shí)并不是非常有效的方法.

您可能感興趣的文章:
  • PHP 實(shí)現(xiàn)字符串翻轉(zhuǎn)(包含中文漢字)的實(shí)現(xiàn)代碼
  • PHP簡(jiǎn)單判斷字符串是否包含另一個(gè)字符串的方法
  • php檢查字符串中是否包含7位GSM字符的方法
  • php對(duì)包含html標(biāo)簽的字符串進(jìn)行截取的函數(shù)分享
  • php 判斷字符串中是否包含html標(biāo)簽
  • php strstr查找字符串中是否包含某些字符的查找函數(shù)
  • php判斷字符以及字符串的包含方法屬性
  • php中判斷一個(gè)字符串包含另一個(gè)字符串的方法
  • php 字符串中是否包含指定字符串的多種方法

標(biāo)簽:重慶 綿陽(yáng) 西安 銅川 宣城 泰州 長(zhǎng)沙 無(wú)錫

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《php 正則 不包含某字符串的正則表達(dá)式》,本文關(guān)鍵詞  php,正則,不,包含,某,字符串,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《php 正則 不包含某字符串的正則表達(dá)式》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于php 正則 不包含某字符串的正則表達(dá)式的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    宁国市| 河津市| 锡林郭勒盟| 兴安盟| 黔江区| 南部县| 金寨县| 沾益县| 滨海县| 滦南县| 五原县| 永平县| 阿瓦提县| 延寿县| 阿荣旗| 鹰潭市| 上杭县| 南康市| 昔阳县| 铜山县| 牙克石市| 霍邱县| 阿巴嘎旗| 阿瓦提县| 亳州市| 郸城县| 广东省| 清河县| 彰化市| 高平市| 武川县| 台湾省| 昌都县| 吉木乃县| 江源县| 津市市| 微博| 满城县| 芦溪县| 临泽县| 阳春市|