我知道如何匹配它,但我不知道匹配的标准,例如,电子邮件匹配器将使用:/^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/,但我需要知道steam id将使用什么。
Demo Steam ID: STEAM_0:1:20206720
有人能给我一个关于STEAM ID的标准吗?
编辑:我使用的是pimvdb提供的正则表达式,但它仍然回答说steam id(STEAM_0:1:20206720)是不正确的。
我的代码如下:
function verifySteamID(){
var elem = document.getElementById('item_name');
var emailExp = /^STEAM_[0-5]:[01]:\d+$/;
if(elem.value.match(emailExp)){
document.getElementById("error").setAttribute("class", "hidden");
return true;
}else{
document.getElementById("error").setAttribute("class", "unhidden");
elem.focus();
return false;
}
}它由以下方式调用:
<input type="submit" value="Donate" id="donatebtn" onclick="return verifySteamID()" />发布于 2011-07-17 21:56:57
根据http://developer.valvesoftware.com/wiki/SteamID#Format的说法,它可能是这样的:
/^STEAM_[0-5]:[01]:\d+$/^...$就是这样,精确的字符串必须匹配。
STEAM_是前缀。
前缀后面应该有一个从0到5的数字。
然后是:,后跟0或1。
然后是另一个:,后面跟着帐号。
发布于 2011-07-17 21:56:31
试试这个:
var input = "STEAM_0:1:20206720";
var isValid = /^STEAM_\d:\d:\d+$/.test(input); //true发布于 2020-08-05 05:32:57
我知道这很旧,但是下面的RegEx表达式适用于我:^STEAM_[0-5]:[0-1]:[0-9]*$
工作原理:
^STEAM_在SteamID.[0-5]:的开头检查"STEAM_“字符串,查找0到5之间的整数,后跟”:“。[0-1]:.[0-9]*$checks,同样的事情是所有下面的字符都是0到9之间的整数。https://stackoverflow.com/questions/6724268
复制相似问题