含有换行符的正则表达式如何匹配

含有换行符的正则表达式如何匹配:

\s\S

\S是各种空白字符,比如\n\t之类的,而\s是^\S

点号( . )可以匹配换行符之外的任何单个字符,被称之为通配符。

匹配包含\n在內的任何字符用 (.|\n)。

import re

strvar = """hello

world!"""

patt = r‘(.|\n)*‘

rs = re.match(patt, strvar)

print rs.group()

用正则表达式来获取一段文本中的任意字符,写出如下匹配规则:
(.*)
结果运行之后才发现,无法获得换行之后的文本。于是查了一下手册,才发现正则表达式中,“.”(点符号)匹配的是除了换行符“\n”以外的所有字符。
以下为正确的正则表达式匹配规则:
([\s\S]*)
同时,也可以用 “([\d\D]*)”、“([\w\W]*)” 来表示。

时间: 2024-10-19 01:52:50

含有换行符的正则表达式如何匹配的相关文章

在使用easyui,datagrid时,JSON中的如果含有换行符,则不能显示数据

http://www.xuebuyuan.com/2103538.html 每项值需处理换行符 item = item.Replace("\r\n", ""); //或\\r\\n替换换行符 http://www.cnblogs.com/lhws/archive/2013/08/16/3262301.html 在easyui中的datagrid中使用行内编辑时textarea的换行保存到mysql数据库为\n在textarea中输入回车符 在js读取textarea

Python中readline()函数 去除换行符

从Python中readline()函数读取的一行内容中含有换行符\n,很多时候我们需要处理不含有换行符的字符串,此时就要去掉换行符\n. 方法是使用strip()函数. 例子如下: f = open("./DownloadList.txt") line = f.readline() while line: line = line.strip('\n') line = f.readline() f.close() 原文地址:https://www.cnblogs.com/lehoho/

正则表达式匹配包括换行符的所有字符

今天在Java中想使用正则表达式来获取一段文本中的任意字符. (.*) 结果运行之后才发现,无法获得换行之后的文本.于是查了一下手册,才发现正则表达式中,"."(点符号)匹配的是除了换行符"\n"以外的所有字符. 查出了一个解决办法,经过一试,果然可以匹配包括换行符在内的任意字符,以下为正确的正则表达式匹配规则: ([\s\S]*)正则表达式匹配包括换行符的所有字符,布布扣,bubuko.com

使用正则表达式匹配任意字符包括空格和换行符

注:元字符包括\ | ( ) [ ] { } ^ $ * + ? . ) 匹配中文字符的正则表达式: [\u4e00-\u9fa5]评注:匹配中文还真是个头疼的事,有了这个表达式就好办了 匹配双字节字符(包括汉字在内):[^\x00-\xff]评注:可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1) 匹配空白行的正则表达式:\n\s*\r评注:可以用来删除空白行 匹配HTML标记的正则表达式:<(\S*?)[^>]*>.*?</>|<.*? />

正则表达式匹配任意字符(包括换行符)的写法

[\s\D]*    匹配换行和空格 今天想使用正则表达式来获取一段文本中的任意字符. 于是很随意得就写出如下匹配规则: (.*) 结果运行之后才发现,无法获得换行之后的文本. 于是查了一下手册,才发现正则表达式中,“.”(点符号)匹配的是除了换行符“\n”以外的所有字符.同时,手册上还有一句话:要匹配包括 '\n' 在内的任何字符,请使用像 '[.\n]' 的模式. 于是我将正则表达式的匹配规则修改如下: ([.\n]*),当然,如果是在C#程序中直接写到话,需要改为([.\\n]*) 结果再

c# 正则表达式如何处理换行符?

我们要分析网页,把整个网页内容作为匹配源,但是c#的正则表达式是默认以一行为单位的,使用?RegexOptions.Multiline 也没有实质性作用(它知识改变了^和$的行为) 只要在正则表达式前面加上(?s)这个选项即可 参考资料:http://hi.baidu.com/hetaoos/blog/item/7936a80faec513e9ab6457b8.html string s = "......."; string r = @"(?s)(?i)导演:\s*<

sed 匹配\n换行符

假设 str="a,b,c,d" echo ${str} | sed "s/,/\n/g" 输出: a b c d echo ${str} | sed "s/,/\n/g" | sed "s/\n/,/g" 输出: a b c d 没有匹配到\n换行符 这是因为sed 模式是以\n换行符作为行的结束标记的.它没有办法匹配到\n再替换 解决方法: echo ${str} | sed "s/,/\n/g" |

关于php中正则匹配包括换行符在内的任意字符的问题总结

要使用正则匹配任意字符的话,通常有以下几种方法,这里我分别对每一种方法在使用的过程中做一个总结: 第一种方式:[.\n]*? 示例 ? PHP preg_match_all('/<div class="list">[.\n]*?<\/div>/i', $content, $data); 按道理这种方式应该是可以的,但我测试发现不行,因为这里中括号里面的“.”被当作一个普通的英文句号去处理了,而不是通配符,因此这里只能匹配到包含英语句号及换行符在内的任意内容了.

Linux文件和windows文件在 换行符的区别

Linux或Unix文件,和windows文件,在来回处理时,如果不注意 换行符的区别,可能导致程序错误!!!深刻的教训.... 在早期的打印机时代,开始新的一行要占用两个字符的时间.如果到了一行的结尾处,你要快速回到新的一行的开头,需要打印针头在纸面上飞快地掠过,常常会在纸面上留下污点.解决这个问题的办法就是,用两个字符:一个字符<Return>来移到第一列,另一个字符<Line feed>来新增一行.计算机产生以后,存储较为昂贵,在如何解决回车换行这个老问题上,人们产生了不同的