正则表达式--匹配/前的所有字符
发布网友
发布时间:2022-05-13 03:25
我来回答
共3个回答
热心网友
时间:2022-04-23 23:28
/^.*\/ 是贪婪的,所以会匹配133754070 2010-06-23 12:10 /user/
非贪婪做法是
/^.\{-}\/
会匹配133754070 2010-06-23 12:10 /
关于贪婪 可以:help greed 查看相应说明
你的几个东西有问题是因为vim使用的正则表达式默认的magic程度比较低(即很多字符不会转义)
比如 vim要表示一个或多个用\+ 而其他正则表达式直接用+
具体可以:help magic 查看相应说明
在搜索的开头使用\v就能表示very magic
/\v^.*(\/)?/ 就不会失败,但搜索到的也不是你想要的
想要得到133754070 2010-06-23 12:10
楼上的方法即可
/^[^/]\+
热心网友
时间:2022-04-24 00:46
^(.*?)/
查看捕获组1
或者这样
^.*?(?=/)
直接看匹配到的字符串
热心网友
时间:2022-04-24 02:21
Vim
/^[^/]\+