สตริงที่มีตัวเลขสามารถตรวจสอบได้โดยใช้ int.TryParse หรือ int.Parse .
Int.Parse จะส่งข้อยกเว้นหากไม่สามารถแยกวิเคราะห์สตริงเป็นจำนวนเต็มได้ ในขณะที่ Int.TryParse ส่งคืนบูลที่ระบุว่าทำได้สำเร็จหรือไม่ นอกจากนี้ Int.TryParse ยังมีพารามิเตอร์ out ซึ่งมีค่าของสตริงที่แยกวิเคราะห์
ตัวอย่าง
using System;
namespace DemoApplication {
class Program {
static void Main(string[] args) {
string numberString = "123";
int number = 0;
if(int.TryParse(numberString, out number)) {
Console.WriteLine($"Try Parse Interger Number: {number}");
}
Console.WriteLine($"Parse Interger Number: {int.Parse(numberString)}");
Console.ReadLine();
}
}
} ผลลัพธ์
ผลลัพธ์ของรหัสคือ
Try Parse Interger Number: 123 Parse Interger Number: 123
ในตัวอย่างข้างต้น เนื่องจาก int.Tryparse ส่งคืนค่าบูลีนพร้อมกับสตริงที่แยกวิเคราะห์ในพารามิเตอร์ out เงื่อนไข if จะคืนค่าเป็น true นอกจากนี้ int.Parse จะส่งคืนค่าจำนวนเต็มเนื่องจากสตริงมีตัวเลขที่เหมาะสม
ตัวอย่าง
using System;
namespace DemoApplication {
class Program {
static void Main(string[] args) {
string numberString = "A123";
int number = 0;
if(int.TryParse(numberString, out number)) {
Console.WriteLine($"Try Parse Interger Number: {number}");
}
elsem{
Console.WriteLine($"String doesnot have a proper number");
}
Console.ReadLine();
}
}
} ผลลัพธ์
ผลลัพธ์ของโค้ดด้านบนคือ
String doesnot have a proper number
เนื่องจากสตริงไม่มีตัวเลขที่เหมาะสม int.Tryparse จะส่งคืนค่าเท็จและดำเนินการส่วนอื่นของโค้ด ในกรณีเดียวกัน int.Parse จะแสดงข้อยกเว้นดังด้านล่าง
ตัวอย่าง
using System;
namespace DemoApplication {
class Program {
static void Main(string[] args) {
string numberString = "A123";
Console.WriteLine($"Parse Interger Number: {int.Parse(numberString)}");
//Exception: Input string was not in correct format.
}
}
}