91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

通過php正則去掉注釋的方法

發布時間:2020-10-09 15:00:01 來源:億速云 閱讀:464 作者:小新 欄目:編程語言

這篇文章主要介紹通過php正則去掉注釋的方法,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

php正則去掉注釋的實現方法:首先創建PHP示例文件;然后通過正則表達式“reg_replace("/(\/\*.*\*\/)|(#.*?\n)|(\/\/.*?\n)/s", '', str_replace((...))”實現去除即可。

測試代碼

文件: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

吉安县| 平乡县| 冀州市| 繁峙县| 嘉善县| 永和县| 香格里拉县| 耒阳市| 东乌珠穆沁旗| 新宁县| 阜平县| 伊宁县| 玉林市| 新昌县| 盱眙县| 兴义市| 平邑县| 工布江达县| 长治县| 临猗县| 虎林市| 金湖县| 吉林市| 长汀县| 桃源县| 汉阴县| 佳木斯市| 莫力| 屏山县| 潜江市| 汪清县| 京山县| 庆云县| 梨树县| 玛多县| 凭祥市| 公主岭市| 读书| 西昌市| 辽中县| 鄱阳县|