사용자가 24 자 (문자 및 숫자, 대소 문자를 구분하지 않음) 등록 코드를 입력 해야하는 텍스트 상자가있는 페이지가 있습니다. 나는 maxlength
사용자가 24자를 입력하도록 제한했다.
등록 코드는 일반적으로 대시로 구분 된 문자 그룹으로 제공되지만 사용자가 대시없이 코드를 입력하고 싶습니다.
jQuery없이 JavaScript 코드를 작성하여 사용자가 입력 한 주어진 문자열에 대시가 없거나 더 나은 영숫자 문자 만 포함되어 있는지 확인하려면 어떻게해야합니까?
답변
에서 “hello”를 찾으려면 your_string
if (your_string.indexOf('hello') > -1)
{
alert("hello found inside your_string");
}
알파 숫자의 경우 정규식을 사용할 수 있습니다.
답변
ES6 .includes () 포함
"FooBar".includes("oo"); // true
"FooBar".includes("foo"); // false
"FooBar".includes("oo", 2); // false
E는 – 대신 당신이 물결표의 opperator 사용할 수 있습니다 IE에 의해 suported하지 않음 ~
( 비트 단위 NOT 포함) ) (.indexOf를
~"FooBar".indexOf("oo"); // -2 -> true
~"FooBar".indexOf("foo"); // 0 -> false
~"FooBar".indexOf("oo", 2); // 0 -> false
Tilde 연산자는 숫자와 함께 사용하여 유효
~N => -(N+1)
합니다. 부울로 숫자를 변환하려면 이중 부정 !!
( Logical NOT ) 과 함께 사용하십시오 .
!!~"FooBar".indexOf("oo"); // true
!!~"FooBar".indexOf("foo"); // false
!!~"FooBar".indexOf("oo", 2); // false
답변
변수에 텍스트가있는 경우 foo
:
if (! /^[a-zA-Z0-9]+$/.test(foo)) {
// Validation failed
}
이렇게하면 사용자가 하나 이상의 문자를 입력 하고 영숫자 문자 만 입력했는지 테스트하고 확인합니다 .
답변
string (word / sentence …)에 특정 단어 / 문자가 포함되어 있는지 확인
if ( "write something here".indexOf("write som") > -1 ) { alert( "found it" ); }
답변
ES6 에는 includes
String ‘s에 내장 메소드 ( )가 prototype
포함되어 있으며, string에 다른 문자열이 포함되어 있는지 여부를 확인하는 데 사용할 수 있습니다.
var str = 'To be, or not to be, that is the question.';
console.log(str.includes('To be'));
지원되지 않는 브라우저에서 다음 방법을 사용하여이 방법을 추가 할 수 있습니다. ( 소스 )
if (!String.prototype.includes) {
String.prototype.includes = function(search, start) {
'use strict';
if (typeof start !== 'number') {
start = 0;
}
if (start + search.length > this.length) {
return false;
} else {
return this.indexOf(search, start) !== -1;
}
};
}
답변
이를 위해서는 정규식을 사용하십시오.
function isAlphanumeric( str ) {
return /^[0-9a-zA-Z]+$/.test(str);
}
답변
당신은 모두 너무 열심히 생각하고 있습니다. 간단한 정규식 만 사용하면 가장 친한 친구입니다.
var string1 = "Hi Stack Overflow. I like to eat pizza."
var string2 = "Damn, I fail."
var regex = /(pizza)/g // Insert whatever phrase or character you want to find
string1.test(regex); // => true
string2.test(regex); // => false