關於正則的貪心匹配與換行符匹配

2021-09-06 05:43:58 字數 717 閱讀 1061

最近做乙個問題,去除html中**的js指令碼,**如下

1

<?php

2$text = <<

3ilove you

456 kkyz m,dfd

71011

ook12

eof;

1314

echo "orginal text: \n\n" . $text . "\n\n";

15$pattern1 = "@@is"; #

等效於"@@isu"16#

末尾的i表示忽略大小寫,s表示.可以匹配換行符,u與?等效,表示關閉無限匹配

17$pattern2 = "@@is"; #

這是無限匹配的pattern,php預設就是無限匹配

18$text1 = preg_replace($pattern1, "", $text

);19

$text2 = preg_replace($pattern2, "", $text

);20

echo "text1: \n\n" . $text1 . "\n\n";

21echo "text2: \n\n" . $text2 . "\n\n";

22 ?>

結果如下:

在Visual Studio,匹配換行符以及空白符

s s r n 忽略換行匹配 是單行 s s r n 多行 因為在visual studio,你若需要匹配換行符以及空白符,需要配合 s s 以及 而 s s是什麼意思呢?大寫的 s是匹配任何非空白字元。小寫的 s是匹配任何空白字元,其中包括空格,製表符和換頁符。而 是將匹配字串錨定到行首或字串首。...

含有換行符的正規表示式如何匹配

含有換行符的正規表示式如何匹配 s s s是各種空白字元,比如 n t之類的,而 s是 s 點號 可以匹配換行符之外的任何單個字元,被稱之為萬用字元。匹配包含 n在內的任何字元用 n importre strvar hello world patt r n rs re.match patt,strv...

正規表示式匹配任意字元(包括換行符)的寫法

s d 匹配換行和空格 今天想使用正規表示式來獲取一段文字中的任意字元。於是很隨意得就寫出如下匹配規則 結果執行之後才發現,無法獲得換行之後的文字。於是查了一下手冊,才發現正規表示式中,點符號 匹配的是除了換行符 n 以外的所有字元。同時,手冊上還有一句話 要匹配包括 n 在內的任何字元,請使用像 ...