我想让用户输入他们自己的城镇/城市和国家,所以我想只在城市和国家之间允许使用字母和逗号,下面是我想出的但是它不适用于第二个表达
'/[a-zA-Z\s]\,[a-zA-Z\s]/'
第一个是不完美的,bcos允许你想要输入的逗号数,
'/^[a-zA-Z\s\,]+$/'
if(!preg_match('/^[a-zA-Z\s\,]+$/', $mem_town_city_country) || !preg_match('/[a-zA-Z\s]\,[a-zA-Z\s]/', $mem_town_city_country))
{
$error = true;
echo '<error elementid="mem_town_city_country" message="TOWN/CITY, COUNTRY - sorry, they appear to be incorrect."/>';
}
我怎么才能只允许一个逗号?
另外,不确定这是否太多 - 我可以检查城市的字符输入,例如至少3个,至少4个国家?
感谢。
答案 0 :(得分:3)
你很亲密。试试这个:
/^[a-zA-Z\s]+\,[a-zA-Z\s]+$/
对于要求的字符数:
/^[a-zA-Z\s]{3,}\,[a-zA-Z\s]{4,}$/
答案 1 :(得分:1)
只允许字母,至少需要1个字母,也允许逗号:
var regex = new RegExp('^[a-zA-Z]{1,}');
if (regex.test(query)) {
// do whatever you want
}
答案 2 :(得分:0)