日期:2014-05-17  浏览次数:20532 次

求段php正则代码验证字符串
字符串规则:可以纯数字或纯字母 亦可二者结合,只能使用“-”不能使用汉字、其他字符符号并且字符串开头不能为“-”,结尾也不能为“-”

------解决方案--------------------
PHP code
preg_match('/^[a-z0-9]+[a-z0-9-]*[a-z0-9]+$/i',$string);

------解决方案--------------------
我只管挑错,

1楼match不了一个字符的:)
2楼也是,\w还包含_, 楼主不要的
------解决方案--------------------
1楼的正则稍微修改下,适应一个字符的情况:
PHP code
/^[a-z0-9]+[a-z0-9-]*[a-z0-9]+|[a-z0-9]+$/i

------解决方案--------------------
$str='\w+[0-9a-zA-Z\-]+\w$'
------解决方案--------------------
我也来凑个热闹
PHP code
/^[0-9a-z][-0-9a-z]*[0-9a-z]$/i