2011-07-17 5 views
1

일치하는 방법을 알고 있지만 예를 들어 기준을 모르지만 전자 메일 일치 프로그램은 다음을 사용합니다. /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/하지만 증기 ID가 무엇을 사용해야하는지 알고 싶습니다.입력이 STEAM ID 형식과 일치하는지 확인하십시오.

데모 스팀 ID : STEAM_0 : 1 : 20206720이

누군가가 나에게 STEAM ID를위한 기준을 제공 할 수?

EDIT : pimvdb에서 제공하는 정규 표현식을 사용하고 있지만 여전히 스팀 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()" /> 
+2

Google이 도와주었습니다. http://developer.valvesoftware.com/wiki/SteamID#Format –

답변

4

http://developer.valvesoftware.com/wiki/SteamID#Format에 따르면이의 라인을 따라 뭔가 수 있습니다 :

/^STEAM_[0-5]:[01]:\d+$/ 

^...$은 정확한 문자열이 일치해야합니다.

STEAM_이 접두사입니다.

접두사 후 0 중 0 또는 1

그런 다음 제

: 범위 일 수있다되어야 다음 계정 번호 뒤에 다른 :.

+0

+1 '{1}'수량 한정자가 필요하지 않습니다. –

+0

@Felix Kling : 고마워, 네 말이 맞아. – pimvdb

+0

여전히 내 증기 ID가 잘못되었다고 회신합니다. js 코드를 포함하도록 질문을 편집했습니다. – Harry

2

이 시도 :

var input = "STEAM_0:1:20206720"; 
var isValid = /^STEAM_\d:\d:\d+$/.test(input); //true 
관련 문제