(?m)(\\S+)\\s+((\\S+)\\s+(\\S+))$,请问这个正则表达式怎么理解?

大哥大姐们帮我说下,(?m)(\\S+)\\s+((\\S+)\\s+(\\S+))$,请问这个正则表达式怎么理解?
最新回答
涟漪幽香

2024-04-24 06:13:17

给你一个例子自己揣摩,1楼回答的并非全对.


(?m)我们可以认为是多行模式匹配,忽略

换行符
.制表符什么的.看下面三个图的区别.






七米海岸

2024-04-24 04:19:38

1.估计这个题目中的(?m)是难点。
(?modifier)是模式修饰符
比如(?i)不区分大小写匹配 模式 (?m)增强行锚点模式 。。

(?m)开启模式,直到(?-m)。如果没出现就一直匹配到最后

在增强行锚点模式下$可以匹配换行符前面的位置和字符串末尾

2.\S 表示非空白字符 \s表示空白字符
+表示一个或多个

3.所以这段正则表示 从匹配文本中提取一行中的非空白字符,
而且是靠近行尾的 数据形式是: 数据 空白字符 数据 空白字符 数据 结尾
追问
(?m)是不是表示按照多行模式,每次提取一行进行匹配?
追答
恩 是多行文本模式