正则表达式截取一段字符串(包括换行符)

2022-03-29 13:17:34 浏览数 (1)

正则表达式中,“.”(点符号)匹配的是除了换行符“n”以外的所有字符。但有时候我们需要匹配包括换行符在内的字符,经过一番搜索,发现了几种正则表达式匹配任意字符(包括换行符)的方法。

可以用 ([sS]) ,也可以用 “([dD])”、“([wW]*)” 来匹配,就可以匹配包括换行符在内的任意字符。

下面是正则表达式元字符介绍

“^” :^会匹配行或者字符串的起始位置,有时还会匹配整个文档的起始位置。

” :

会匹配行或字符串的结尾

而且被匹配的字符必须是以This开头有空格也不行,必须以Regex结尾,也不能有空格与其它字符

“b” :不会消耗任何字符只匹配一个位置,常用于匹配单词边界 如 我想从字符串中“This is Regex”匹配单独的单词 “is” 正则就要写成 “bisb”

“d”: 匹配数字,

例如要匹配一个固定格式的电话号码以0开头前4位后7位,如0737-5686123 正则:^0ddd-ddddddd$ 这里只是为了介绍“d”字符,实际上有更好的写法会在 下面介绍。

“w”:匹配字母,数字,下划线。

例如我要匹配“a2345BCD__TTz” 正则:“w ” 这里的“ ”字符为一个量词指重复的次数,稍后会详细介绍。

“s”:匹配空格

例如字符 “a b c” 正则:“wswsw” 一个字符后跟一个空格,如有字符间有多个空格直接把“s” 写成 “s ” 让空格重复

“.”:匹配除了换行符以外的任何字符

这个算是“w”的加强版了“w”不能匹配 空格 如果把字符串加上空格用“w”就受限了,看下用 “.”是如何匹配字符“a23 4 5 B C D__TTz” 正则:“. ”

0 人点赞