我是正则表达的新手, 任何人都可以帮我解释这句话:
$body = preg_replace('/\s{6,}/ms','',$body);
提前致谢。
答案 0 :(得分:2)
$body = preg_replace('/\s{6,}/ms','',$body);
将空格(\s
)替换为6到未定义的时间({6,}
),没有任何内容。做这个多线。 (/m
)。可以删除s
,当您不使用“所有字符”字符(.
)时,它不会添加任何值。
答案 1 :(得分:1)
删除至少6个连续空白字符的出现次数。
\ s - 空格
定义为(水平)制表符,空格,换行符,回车符或换页符。
模式修饰符无用btw:
m
更改了^
和$
s
也会使.
与换行符相匹配;否则它会在一条线的末端停止。答案 2 :(得分:0)
基本上它的说法用连续六个空格替换任何东西。
\s = space
{6,} = between 6 and (since the second number after the comman is blank) 6
\ms = Used together, as /ms, they let the "." match any character whatsoever, while still allowing "^" and "$" to match, respectively, just after and just before newlines within the string.
同时查看perldoc for perl regular expressions将来可能会有所帮助。