首页
注册
登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请
登录
›
正则表达式可视化调试 regex101.com
V2EX
›
正则表达式
正则苦逼就救……
YQtaku
·
2012-12-27 03:12:54 +08:00
· 2009 次点击
这是一个创建于 4155 天前的主题,其中的信息可能已经有所发展或是发生改变。
jekyll是通过正则将
---
layout: post
---
#content
some words.....
将文章内容读出来吗?(即读取markdown文件,将首个匹配到的`---任何字符---`去掉?
请问这个正则要怎么写囧,想了半天没想到……Orz
正则
words
some
7 条回复
•
1970-01-01 08:00:00 +08:00
1
catfan
2012-12-27 05:25:44 +08:00
/[\-]+\s+.*\s+[\-]+/i
2
Catstyle
2012-12-27 09:29:22 +08:00
@
catfan
楼主到底是要把`---任何字符---`去掉,还是将文章内容(some words.....)读出来?
3
YQtaku
OP
2012-12-27 11:34:22 +08:00
@
Catstyle
意思都差不多吧?读取整个文件
- 將首个`---任何字符---`替换成空
- 或者匹配首个`---任何字符---`以外的内容读出来
4
for4
2012-12-27 11:39:12 +08:00
---.*?---
用单行懒惰模式
5
YQtaku
OP
2012-12-27 14:24:55 +08:00
@
catfan
谢谢喵大~ It works~
@
for4
这个没有效果=。=
preg_replace('/[\-]+\s+.*\s+[\-]+/i', '', "---\nkey:value\n---\n#content\nsome words\n---test"); // it works.
preg_replace('/---.*?---/', '', "---\nkey:value\n---\n#content\nsome words\n---test"); // it doesnot work.
看来要正式学一下正则了QAQ
6
Catstyle
2012-12-27 15:10:48 +08:00
@
for4
人家是多行的
@
YQtaku
好吧, 我有强迫症,去掉和读取是不一样的...
for4那个也可以,不过要在后面加上s就可以开启多行模式了
即/---.*?---/s
7
Catstyle
2012-12-27 15:12:15 +08:00
@
for4
@
YQtaku
不好意思,表达有误,是DOTALL模式,即‘.’也可匹配换行符
关于
·
帮助文档
·
博客
·
API
·
FAQ
·
实用小工具
·
5665 人在线
最高记录 6547
·
Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 27ms ·
UTC 08:49
·
PVG 16:49
·
LAX 01:49
·
JFK 04:49
Developed with
CodeLauncher
♥ Do have faith in what you're doing.