HOME > > 文字列の取り扱い2

js

文字列の取り扱い2

●文字目〜●文字目までの文字列を取り出す

sliceはマイナス指定が可能。substringはマイナス指定はゼロになる

const neko1 = '猫が散歩しています'.slice(0,4);
console.log(neko1); //猫が散歩

const neko1a ='猫が散歩しています';
console.log(neko1a.slice(0,5));  //猫が散歩し

const neko2 = '猫がひなたぼっこしています'.slice(-4,-1);
console.log(neko2); //ていま

const neko3 = '猫が魚釣りをしています'.substring(2,6);
console.log(neko3); //魚釣りをし

const neko4 = '猫がお月見をしています'.substring(-4,-1);
console.log(neko4); //(空欄が返る)

終わりを省略することができる

const neko5 = '猫が塀の上を歩いています'.slice(6);
console.log(neko5); //歩いています

const neko6 = '猫が帽子をかぶっています'.substring(5);
console.log(neko6); //かぶっています

substringは、開始と終了が逆になっても機能する

const neko7 = '猫が塀の上を歩いています'.slice(6,1);
console.log(neko7); //(空欄が返る)

const neko8 = '猫が帽子をかぶっています'.substring(5,1);
console.log(neko8); //が帽子を

●文字目を指定し、そこから◯文字分を取り出す

const neko10 = '猫の森にはたくさんの花が咲いています'.substr(4,3);
console.log(neko10); //はたく

文字列の置き換え・削除

第一引数が文字列の場合、置き換え対象は最初にマッチした文字のみ

let imageN = 'image1.png';
let imageNN = imageN.replace('1','2');
console.log(imageNN); // image2.png
let inputTxt = '猫のご飯\n割引';
let inputTxt2 = inputTxt.replace('\n','');  //空にする
console.log(inputTxt);  //改行されている
console.log(inputTxt2);  //改行が省かれた

電話番号例

第一引数が文字列の場合、置き換え対象は最初にマッチした文字のみなので、-は最初の一つ目しか消えない

let telnum = '012-345-6789';
telnum2 = telnum.replace('-','');
console.log(telnum2);  //012345-6789

正規表現を使い、文字列全体のマッチ(gオプション)を指定すると全て削除できる

let telnum3 = '012-345-6789';
telnum4 = telnum.replace(/-/g,'');
console.log(telnum4); //0123456789

入力フォームにハイフンあり、なし、どちらでも番号のみにしたい場合

1.ハイフン付で電話番号を入れてください。2.送信ボタンをクリックしてください(実際の送信はしません)

//送信ボタンクリック
document.querySelector('#stbtn').addEventListener('click',(event)=>{
//電話番号を取得
const phonenum = document.querySelector('#phonefr').value;
const phonenum2 = phonenum.replace(/-/g,'');

let ptxt =  document.querySelector('.attxt');
ptxt.innerHTML = phonenum2;
});

このページのTOPへ