Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Javascript

วิธีแยกตัวเลขออกจากสตริงด้วย JavaScript

เรียนรู้วิธีดึงตัวเลขหนึ่งหรือหลายตัวออกจากสตริงด้วย JavaScript

สมมติว่าคุณมีสตริงที่มีตัวเลข และคุณต้องการแยกเฉพาะตัวเลขเท่านั้น ไม่มีปัญหา คุณสามารถใช้ match() . ของ JavaScript ได้ วิธีการ

นี่คือค่าสตริงที่มีตัวเลขหนึ่งตัว (1995 ) ที่กำหนดให้กับตัวแปรชื่อ stringWithOneNumber :

const stringWithOneNumber = "JavaScript was invented in 1995 by Brendan Eich"

ทีนี้มาแนบ match() . กัน ให้กับตัวแปร และเพิ่ม \d+ เป็นอาร์กิวเมนต์ ดังนั้นดูเหมือนว่า match(/\d+/)

stringWithOneNumber.match(/\d+/)

หมายเหตุ:\d+ เป็นอักขระเมตานิพจน์ทั่วไป (RegEx) ที่หมายถึง "จับคู่ตัวเลข 1 ตัวขึ้นไป"

แล้วมาพิมพ์ผลลัพธ์กัน:

console.log(stringWithOneNumber.match(/\d+/))
// ["1995"]

มันได้ผล!

แยกตัวเลขหลายตัวออกจากสตริง

จะเกิดอะไรขึ้นหากสตริงมีตัวเลขตั้งแต่สองตัวขึ้นไป

ไม่มีปัญหา คุณเพียงแค่เพิ่ม g global ส่วนกลาง ตั้งค่าสถานะเป็น match() ข้อโต้แย้ง. ลองใช้ตัวอย่างก่อนหน้านี้ แต่คราวนี้ประโยคสตริงมีตัวเลขสองตัว:

const stringWithMultipleNumbers =
  "JavaScript was invented in 1995 by Brendan Eich, and is still used in 2020"

ตอนนี้เพิ่ม match() เมธอดด้วย \d+ + g :

stringWithMultipleNumbers.match(/\d+/g)

พิมพ์ผลลัพธ์:

console.log(stringWithMultipleNumbers.match(/\d+/g))
// ["1995", "2020"]

รุ่งโรจน์