由于自PHP 5.3.0以来不推荐使用POSIX正则表达式(ereg),因此我想知道将旧表达式转换为PCRE(Perl兼容正则表达式)(preg)的简单方法.
每个例子,我有这个正则表达式:
eregi('^hello world');
Run Code Online (Sandbox Code Playgroud)
如何将表达式转换为preg_match兼容表达式?
注意:此帖子用作与从ereg转换为preg相关的所有帖子的占位符,以及相关问题的重复选项.请不要关闭这个问题.
有关:
MySQL数据imoprt mongo数据库.
price float(15,2) in mysql, mongo is not float(15,2).
Run Code Online (Sandbox Code Playgroud)
我想确定var $price有两个小数位.
例如.100.00是对的,100或100.0是错误的.
eg.1
$price = 100.00;
Run Code Online (Sandbox Code Playgroud)
$price 有两位小数,是的.
eg.2
$price = 100.0;
Run Code Online (Sandbox Code Playgroud)
$price 没有两位小数,这是错的.
可能重复:
将ereg表达式转换为preg
我试图转换,但我一直在失败.
我的ereg: if (!ereg("^[a-zA-Z0-9]{3,16}$",$username)) {
是错的,因为它已经过时了.我该如何切换到preg_match?
我有一个注册脚本,我想验证人们是否正确输入了他们的电子邮件,但这似乎没有用?任何想法?
if ($_POST){
$email=stripslashes($_POST['email']);
$valid=eregi('^([0-9a-z]+[-._+&])*[0-9a-z]+@([-0-9a-z]+[.])+[a-z]{2,6}$',$email);
if (!$email && !$valid){
$_SESSION['error'] = "I'm sorry but the email you specified is not valid. Please enter a valid email";
unset($email);
header("Location: register.php");
exit;
}
}
Run Code Online (Sandbox Code Playgroud) php ×4
email ×1
ereg ×1
mongodb ×1
mysql ×1
pcre ×1
preg-match ×1
preg-replace ×1
regex ×1
validation ×1