Python正則表達式中的re.S

Python正則表達式中的re.S

title: Python正則表達式中的re.S
date: 2014-12-21 09:55:54
categories: [Python]
tags: [正則表達式,python]
---

在Python的正則表達式中,有一個參數為re.S。它表示“.”(不包含外側雙引號,下同)的作用擴展到整個字符串,包括“\n”。看如下代碼:

import re
a = '''asdfsafhellopass:234455worldafdsf'''
b = re.findall('hello(.*?)world',a)
c = re.findall('hello(.*?)world',a,re.S)
print 'b is ' , b
print 'c is ' , c

運行結果如下:

b is  []
c is  ['pass:\n\t234455\n\t']

正則表達式中,“.”的作用是匹配除“\n”以外的任何字符,也就是說,它是在一行中進行匹配。這里的“行”是以“\n”進行區分的。a字符串有每行的末尾有一個“\n”,不過它不可見。

如果不使用re.S參數,則只在每一行內進行匹配,如果一行沒有,就換下一行重新開始,不會跨行。而使用re.S參數以后,正則表達式會將這個字符串作為一個整體,將“\n”當做一個普通的字符加入到這個字符串中,在整體中進行匹配。

在re.py庫的介紹中有以下語句:

"." Matches any character except a newline.

S DOTALL "." matches any character at all, including the newline.

這里特別感謝評論中叫做Style的朋友指出了我的錯誤。

posted on 2014-12-21 10:06 青南 閱讀(...) 評論(...) 編輯 收藏

轉載于:https://www.cnblogs.com/xieqiankun/p/re-sinpython.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/375410.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/375410.shtml
英文地址,請注明出處:http://en.pswp.cn/news/375410.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

MySQL數據庫安全配置

文章來源:http://www.xfocus.net MySQL數據庫安全配置1、前言MySQL 是完全網絡化的跨平臺關系型數據庫系統,同時是具有客戶機/服務器體系結構的分布式數據庫管理系統。它具有功能強、使用簡便、管理方便、運行速度快、安全可靠性強等優點,用戶…

slidingmenu屬性

轉載原文 http://www.cnblogs.com/xueqiang911226/p/3564757.html 最近用到slidingmenu,要了解這個庫,首先得了解屬性和方法,特意記錄以備以后方便查詢。 SlidingMenu 常用屬性介紹: menu.setMode(SlidingMenu.LEFT);//設置左滑菜單 slidin…

每天一個linux命令(36):diff 命令

diff 命令是 linux上非常重要的工具,用于比較文件的內容,特別是比較兩個版本不同的文件以找到改動的地方。diff在命令行中打印每一個行的改動。最新版本的diff還支持二進制文件。diff程序的輸出被稱為補丁 (patch),因為Linux系統中還有一個pa…

移動conda文件夾

mv /root/anaconda3 /home/root/需要修改的文件有 ~/.bash/home/root/anaconda3/etc/profile.d/conda.sh/home/root/anaconda3/bin/conda 第一行

replace 替換全部的正確姿勢

本文同步自我的個人博客:http://www.52cik.com/2015/11/06/replace-all.html 關于字符串替換問題,其實是個很簡單的問題,但卻也不那么簡單,至少對于很多新手而言,全局替換一直是個坑。 簡單而強大的正則 可能你覺得要替…

JAVA - 單例設計模式

JAVA - 單例設計模式 一. 簡介二. 單例模式的原則三. 單例模式的實現1.1 餓漢式1.1.1 靜態變量初始化方式1.1.2 靜態代碼塊初始化方式1.1.3 枚舉方式 1.2 懶漢式1.2.1 懶加載初始化方法 (線程不安全)1.2.2 懶加載初始化方法 (線程安全&#x…

http請求報文

關于urlURL 是大型標識符 URI(統一資源標識)的一部分。這個超集是建立在已有的命名慣例基礎上的。一個 URL 是一個簡單的 URI,使用已存在的協議或規劃(也就是 http,ftp 等)作為地址的一部分。為了進一步描繪這些,我們將會Edit By Vheavens Edit By Vheavens 引入 non-URL 的 UR…

operanbsp;內容攔截

結束我大opera的一個好用功能 內容攔截 博客的主要很清爽,也可以自定義.非常好, 但打開博文,左邊的特別的精彩圖文,瞄到就不高興.好的 開始 右鍵-內容攔截 shift 點那個精彩xx,最右上角,廣告, 然后點完成.ok了 貌似我大遨游的廣告攔截更好用 轉載于:https://www.cnblogs.com/wa…

Solr-5.3.1安裝配置

Solr-5.3.1安裝配置官方網站:http://lucene.apache.org/solr/http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.htmlhttp://lucene.apache.org/solr/quickstart.html環境:CentOS6 x64Solr-5.3.1從Solr5.0開始,Solr不再發布為在任何…

EF for Firebird

今天用了Firebird,記錄下怎么用,不然下次給忘記了 1.官網下載包 1.DDEXProvider-3.0.1.0.msi 2.FirebirdSql.Data.FirebirdClient-4.6.2.0.msi 備注: 1.發現DDEXProvider 與 FirebirdSql.Data.FirebirdClient安裝有先后順序 1.如果中間出現了…

php幾個函數

1. dirname (PHP 3, PHP 4, PHP 5) dirname -- 返回路徑中的目錄部分說明 string dirname ( string path )給出一個包含有指向一個文件的全路徑的字符串,本函數返回去掉文件名后的目錄名。 在 Windows 中,斜線(/)和反斜線&#xf…

Struts2 自定義攔截器(easy example)

要自定義攔截器需要實現com.opensymphony.xwork2.interceptor.Interceptor接口: 新建一個MyInterceptpackage com.action;import com.opensymphony.xwork2.ActionInvocation; import com.opensymphony.xwork2.interceptor.Interceptor;public class MyInterceptor i…

img標簽在div里上下居中

方法一&#xff1a;圖片尺寸未知&#xff0c;IE8-不支持 CSS部分&#xff1a; <style> .content{width:500px;height:500px;border:1px solid black;position:relative; } </style>DOM部分&#xff1a; <div class"content"> <img src"htt…

(接口)銀聯證書上傳被修改的問題和讀取證書的絕對路徑問題

最近在做對接銀聯的支付接口。相對于支付寶、微信支付&#xff0c;銀聯支付接口應該是做的最完美的了。銀聯支付平臺提供了足夠詳細的接口文檔&#xff0c;接口demo&#xff0c;常見問題解決方案。 更人性化的是&#xff0c;個人可以免費注冊一個商家賬號&#xff0c;提供給你免…

控制器對視圖聲明周期的控制

init&#xff0d;初始化程序 viewDidLoad&#xff0d;加載視圖 viewWillAppear&#xff0d;UIViewController對象的視圖即將加入窗口時調用&#xff1b; viewDidApper&#xff0d;UIViewController對象的視圖已經加入到窗口時調用&#xff1b; viewWillDisappear&#xff0d;UI…

MST:Bad Cowtractors(POJ 2377)

壞的牛圈建筑 題目大意&#xff1a;就是現在農夫又要牛修建牛欄了&#xff0c;但是農夫想不給錢&#xff0c;于是牛就想設計一個最大的花費的牛圈給他&#xff0c;牛圈的修理費用主要是用在連接牛圈上 這一題很簡單了&#xff0c;就是找最大生成樹&#xff0c;把Kruskal算法改一…

有關進程的一些基本概念

對進程的初步描述 一.和進程有關的一些概念 ①一個進程就是一個正在執行程序的實例&#xff0c;包括程序計數器&#xff0c;寄存器和變量的當前值。 從概念上說&#xff0c;每個進程擁有它自己的虛擬CPU&#xff0c;當然真實的CPU在各個進程之間來回切換。 ②在某一瞬間&…

第4章 maven依賴特性

第4章 maven依賴特性 本章詳細介紹maven的依賴特性和依賴范圍&#xff0c;如何排除依賴。 4.1 什么是依賴傳遞 舉個例子 在非maven項目中&#xff0c;你需要使用spring功能&#xff0c;你會想到導入spring的jar包&#xff0c;那么&#xff0c;srping又需要其他依賴jar包支持&a…

lintcode :Integer to Roman 整數轉羅馬數字

題目 整數轉羅馬數字 給定一個整數&#xff0c;將其轉換成羅馬數字。 返回的結果要求在1-3999的范圍內。 樣例 4 -> IV 12 -> XII 21 -> XXI 99 -> XCIX 更多案例&#xff0c;請戳 http://literacy.kent.edu/Minigrants/Cinci/romanchart.htm 說明 什么是 羅馬數字…