欧美日韩不卡一区二区三区,www.蜜臀.com,高清国产一区二区三区四区五区,欧美日韩三级视频,欧美性综合,精品国产91久久久久久,99a精品视频在线观看

php語言

PHP判斷表達(dá)式中括號(hào)是否匹配

時(shí)間:2025-04-17 10:10:52 php語言 我要投稿

PHP判斷表達(dá)式中括號(hào)是否匹配

  學(xué)習(xí)PHP語言的時(shí)候,初學(xué)者往往會(huì)對(duì)數(shù)組感到一些棘手。不過在通過深入的學(xué)習(xí)之后,我們會(huì)發(fā)現(xiàn),這些其實(shí)并沒有想象中的困難。下面小編就為大家?guī)硪黄狿HP判斷表達(dá)式中括號(hào)是否匹配的簡(jiǎn)單實(shí)例。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧。

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

  <table>

  <tr><td>aaaa</td></tr>

  <tr><td>bbbb</td></tr>

  <tr><td>cccc</td></tr>

  <tr><td>dddd</td></tr>

  </table>

  像這種的文本,用PHP的正則表達(dá)式怎么匹配??

  我最初的想法:

  pattern:"/<tr>[.n]*?</tr>"(這個(gè)是錯(cuò)誤的)

  想法思路:"."能匹配任意非換行字符,使用"[.n]"組合,使其能夠匹配所有的字符(包括換行符),但天有不測(cè)風(fēng)云啊——悲劇了,結(jié)果什么都沒有!

  經(jīng)過一番啃骨之后寫了另一個(gè)

  pattern:"/<tr>(.|n)*?</tr>"(這個(gè)是可以)

  將“[]”換成"()",使用“|”做一個(gè)或選擇,這樣就行了(納悶了,怎么"[]"也是選擇方式的就不行???)

  網(wǎng)上也有一答案:

  PATTEN: "/<tr>.*?</tr>/is"(很簡(jiǎn)潔很方便,贊成此方法)

  后記: 怎么"[]"也是選擇方式的就不行???你知道的話別忘了告訴小弟一聲哦……

  []里的.相當(dāng)于.,仔細(xì)看正則的說明去吧

  涉及到換行一般考慮用模式修正符s

  s (PCRE_DOTALL)

  如果設(shè)置了這個(gè)修飾符, 模式中的點(diǎn)號(hào)元字符匹配所有字符, 包含換行符. 如果沒有這個(gè) 修飾符, 點(diǎn)號(hào)不匹配換行符.

  []里面的是一些范圍或者組合

  lz試一下"/<tr>[.]*?</tr>/is"這個(gè)就知道了,

  還有()很強(qiáng)大的</p

  如下所示:

  <?php

  /**

  * title: 判斷表達(dá)式中括號(hào)是否匹配

  * Description: () 匹配 )(不匹配 利用壓棧和出棧

  * @author Mr Lv

  */

  function isValid($expstr) {

  $temp = array();

  for ($i=0; $i<strlen($expstr); $i++) {

  $ch = $expstr[$i];

  switch($ch) {

  case '(':

  array_push($temp, '(');

  break;

  case ')':

  if (empty($temp) || array_pop($temp) != '(') {

  return "缺少左括號(hào)(";

  }

  }

  }

  return empty($temp) == true ? "表達(dá)式匹配" : "缺少右括號(hào))";

  }

  $expstrA = "(1+3(6*4)-(2+3))()(";

  $expstrB = "(1+3(6*4)-(2+3))()";

  $expstrC = "(1+3(6*4)-(2+3)))";

  echo isValid($expstrA);

  echo "<br>";

  echo isValid($expstrB);

  echo "<br>";

  echo isValid($expstrC);

  ?>

  頁面信息:

  ?

  1

  2

  3

  缺少右括號(hào))

  表達(dá)式匹配

  缺少左括號(hào)(

【PHP判斷表達(dá)式中括號(hào)是否匹配】相關(guān)文章:

PHP判斷表達(dá)式中括號(hào)是否匹配的簡(jiǎn)單實(shí)例05-31

判斷PHP數(shù)組是否為空的代碼08-26

PHP如何判斷數(shù)組是否為空07-26

PHP正則匹配中文字母數(shù)字正則的表達(dá)式07-14

PHP正則匹配中文字母數(shù)字正則表達(dá)式09-25

PHP判斷遠(yuǎn)程url是否有效的幾種方法09-27

PHP中判斷變量為空的方法06-18

PHP判斷數(shù)組是否為空的5大方法10-16

php判斷一個(gè)數(shù)組是否為有序09-04