我想升级我的正则表达式,让用户写.
或数字但不单独,而不是在最后一个单词中写.
实施例: 我想写
hello to web 2.0
或hello farah.nor
但不是hello word.
而不是.....................
或213123213123123
这是我的正则表达式
preg_match('#^[a-z0-9. ]+$#i',$text)
答案 0 :(得分:0)
你快到了:
preg_match('#^[a-z0-9. ]+(?<!\.)$#i',$text)
负面的lookbehind确保字符串不会在.
中结束(如果它仅由.
组成,它也会这样做,因此也会捕获条件。)
修改强>
现在您还想要禁止“仅数字”,您还需要一个先行断言:
preg_match('#^(?![0-9]*$)[a-z0-9. ]+(?<!\.)$#i',$text)