js
文字列の取り扱い4
正規表現
iOSを使っているかテストする
正規表現を使った場合
<p id="txt1"></p>
const Txt1 = document.getElementById("txt1");
if (/iPhone|iPod|iPad/.test(navigator.userAgent)) {
Txt1.innerHTML = `iOS端末を使っていますね`
} else {
Txt1.innerHTML = `iOS端末ではありません`
};
正規表現を使わない場合
<p id="txt2"></p>
const Txt2 = document.getElementById("txt2");
if (
navigator.userAgent.includes('iPhone')||
navigator.userAgent.includes('iPod')||
navigator.userAgent.includes('iPad')
) {
Txt2.innerHTML = `iOS端末を使っていますね`;
} else {
Txt2.innerHTML = `iOS端末ではありません`;
};
正規表現
/パターン/
「N」が「NEKO」に含まれるかどうか
console.log(/N/.test('NEKO')); //true
console.log(/N/.test('neko')); //false
「猫の森」が「猫」で始まっているかどうか
console.log(/^猫/.test('猫の森')); //true
数字が含まれているかどうか
console.log(/\d/.test('あいうえお')); //false
console.log(/\d/.test('かきくけこ12')); //true
「しまう」の後「ま」が0回以上続くか
console.log(/しまうま.*/.test('しまうしかばうま')); //false
console.log(/しまうま.*/.test('しまうま')); //true
console.log(/しまうま.*/.test('しまうし')); //false
「猫飯」または「猫」と「飯」の間に文字が含まれるか
console.log(/猫.*飯/.test('猫のご飯の時間')); //true
console.log(/猫.*飯/.test('猫飯の時間')); //true
console.log(/猫.*飯/.test('猫遊びの時間')); //false
数字-数字-数字 かどうか
console.log(/\d+-\d+-\d/.test('123-456-7890')); //true
console.log(/\d+-\d+-\d/.test('aiueo-456-7890')); //false
電話番号が正しく入力されているか
条件:10桁または11桁、最初はゼロで始まる。
電話番号を入力してください
メッセージ:
<p>電話番号を入力してください</p>
<input id="telnum" type="tel">
<p id="keikoku">メッセージ:</p>
const Telnum = document.querySelector('#telnum');
const Keikoku = document.querySelector('#keikoku');
Telnum.addEventListener('keyup', ()=> {
const Telnumval = Telnum.value;
const Telnumval2 = Telnumval.replace(/-/g, '');
if (/^[0][0-9]{9,10}$/.test(Telnumval2) === false ) {
Keikoku.innerHTML = '電話番号を正しく入力してください。';
} else {
Keikoku.innerHTML = 'OKです。';
};
});