亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

php正則如何去除注釋

發布時間:2021-02-25 10:13:20 來源:億速云 閱讀:154 作者:清風 欄目:編程語言

本文將為大家詳細介紹“php正則如何去除注釋”,內容步驟清晰詳細,細節處理妥當,而小編每天都會更新不同的知識點,希望這篇“php正則如何去除注釋”能夠給你意想不到的收獲,請大家跟著小編的思路慢慢深入,具體內容如下,一起去收獲新知識吧。

php有什么用

php是一個嵌套的縮寫名稱,指的是英文超級文本預處理語言(php:Hypertext Preprocessor)的縮寫,它的語法混合了C、Java、Perl以及php自創新的語法,主要用來做網站開發,許多小型網站都用php開發,因為php是開源的,從而使得php經久不衰。

php正則去除注釋的方法:首先創建好PHP示例文件并包含注釋內容;然后通過“highlight_string(removeComment(file_get_contents('./a.php')));”方法去除注釋即可。

使用正則去除php代碼中的注釋方法

測試代碼

文件:a.PHP

<?php
/**
 * 加法計算
 * 測試
 */
// 設定$a的值
$a = 10;
// 設定$b的值
$b = 5;
// 加法
$c = $a + $b;
# 輸出結果
echo $c;

文件:test.php

echo "源碼:<br />";
show_source('./a.php');
echo "<hr />去除注釋后:<br />";
highlight_string(removeComment(file_get_contents('./a.php')));
 
/**
 * 去除PHP代碼注釋
 * @param string $content 代碼內容
 * @return string 去除注釋之后的內容
 */
function removeComment($content){
 return preg_replace("/(\/\*.*\*\/)|(#.*?\n)|(\/\/.*?\n)/s", '', str_replace(array("\r\n", "\r"), "\n", $content));
}

測試輸出

執行test.php,輸出如下:

php正則如何去除注釋

正則分析

(\/\*.*\*\/) 匹配 /* */
(#.*?\n)  匹配 #  遇到第一個回車后結束
(\/\/.*?\n) 匹配 //  遇到第一個回車后結束

本站小編繼續補充一下:

多行注釋

<?php
  
$s = '/*aaaa
sss
*/*/';
  
preg_match('@/\*.*?\*/@s', $s, $match);
  
var_dump($match);

運行結果

array(1) {
 [0]=>
 string(15) "/*aaaa
sss
*/"
}

匹配單行注釋

<?php
$str = " 
a = b; //asdf //saf
b = c; //asdf
  ";
$reg = '@\s*//.*$@m';
  
$res = preg_replace($reg,'',$str);
  
echo $res;

輸出

a = b;
b = c;

再來一個lua版的

local test = "int x; /* xx */ xx*/ int y; /* y */"
  
function string.gfind(test, patten)
 local i,j = 0,0;
 return function()
  i,j = string.find(test, patten, j+1)
  if(i == nil) then -- end find
   return nil 
  end 
  return string.sub(test, i, j)
 end 
end
  
  
for v in string.gfind(test, "/%*.-%*/") do
 print(v)
end

輸出

/* xx */

/* y */

phpstorm 正則匹配刪除注釋行(替換注釋行為空行)

使用phpstorm 來編寫php 和javascript 代碼,感覺還是不錯的,用得也很舒服。

遇到了一個需求,有時候在閱讀框架源代碼的時候 , 想過濾(刪除)掉源代碼中的注釋行,如果手動逐行刪除顯示不夠科學。

當然想到了強大的正則匹配(regExp regular expression), 通過寫一個正則表達式,來查找出所有的注釋行,并將其替換成空,即實現了需求。

1. ctrl + F , 輸入正則表達式:(\/\/.*$)|(\/\*(.|\s)*?\*\/)

2. ctrl + R, 不輸入:

3. 點擊后面的 Replace all

但發現,這樣并沒有完全實現我們的需求,只是將注釋行替換成了空行。

所以,下面我們再寫一個正則表達式, 將空行匹配出來,刪掉。

1.ctrl + F, 輸入正則表達式: ^\n

2.ctrl + R, 不輸入

3.點擊后面的 Replace all

但發現,還是并沒有全部刪掉空行。(還有一些空行沒刪掉)

所以,我們繼續來一個正則匹配刪除。

1.ctrl + F, 輸入正則表達式: \s\n

2.ctrl + R, 不輸入

3.點擊后面的 Replace all

好的,到這里,所有的空行全部刪除。 

如果你能讀到這里,小編希望你對“php正則如何去除注釋”這一關鍵問題有了從實踐層面最深刻的體會,具體使用情況還需要大家自己動手實踐使用過才能領會,如果想閱讀更多相關內容的文章,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

php
AI

休宁县| 藁城市| 涞水县| 灵宝市| 论坛| 南陵县| 金昌市| 诏安县| 鲁山县| 松潘县| 南安市| 垣曲县| 文山县| 大田县| 固安县| 内江市| 通山县| 大石桥市| 宁津县| 饶河县| 息烽县| 临安市| 满城县| 花莲县| 万盛区| 阳信县| 驻马店市| 江城| 徐汇区| 陆川县| 西充县| 沙雅县| 九江县| 诏安县| 衢州市| 托克托县| 石首市| 香格里拉县| 安仁县| 土默特左旗| 连城县|