php用正则表达抓取网页中文章( 一下怎么为用户名写一个匹配模式?.服务器)
优采云 发布时间: 2022-01-28 16:13php用正则表达抓取网页中文章(
一下怎么为用户名写一个匹配模式?.服务器)
现在,用户名不能以句点开头和结尾。服务器也是如此。此外,您不能有两个连续的句点,它们之间至少有一个字符,所以让我们看看如何为用户名匹配模式编写用户名:
^[_a-zA-Z0-9-] $
目前还不能允许一个句点。让我们添加它:
^[_a-zA-Z0-9-] (\.[_a-zA-Z0-9-] )*$
上面的意思是:“以至少一个规范字符(. 除外)开头,后跟零个或多个以点开头的字符串。”
为简单起见,我们可以将 ereg().eregi() 替换为不区分大小写的 eregi(),我们不需要指定两个范围“az”和“AZ” - 只需指定一个即可:
^[_a-z0-9-] (\.[_a-z0-9-] )*$
以下服务器名称相同,但下划线要去掉:
^[a-z0-9-] (\.[a-z0-9-] )*$
完成。现在只需使用“@”来连接两个部分:
^[_a-z0-9-] (\.[_a-z0-9-] )*@[a-z0-9-] (\.[a-z0-9-] )*$
这是完整的邮件认证匹配模式,调用即可
eregi('^[_a-z0-9-] (\.[_a-z0-9-] )*@[a-z0-9-] (\.[a-z0-9-] )* $ ',$eamil)
你可以得到它是否是电子邮件。
正则表达式的其他用途
提取字符串
ereg() 和eregi() 具有允许用户使用正则表达式提取字符串的一部分的功能(您可以阅读手册了解详细信息)。例如,我们想从路径/URL 中提取文件名 - 您需要以下代码:
ereg("([^\\/]*)$", $pathOrUrl, $regs);
回声 $regs[1];
高级替换
ereg_replace() 和eregi_replace() 也非常有用:如果我们想用逗号替换所有区间减号:
ereg_replace("[ \n\r\t] ", ",", trim($str));