Rust:
রেগুলার এক্সপ্রেশন ব্যবহার করা
কিভাবে:
Rustের regex
লাইব্রেরি নিয়মিত প্রকাশের সাথে কাজ করার জন্য একটি যাওয়ার স্থান। এটি ব্যবহার করতে, আপনাকে প্রথমে এটি আপনার Cargo.toml
এ যোগ করতে হবে:
[dependencies]
regex = "1"
এরপরে, আপনি Rust কোডে রেজেক্স ফাংশনালিটিজ বাস্তবায়ন শুরু করতে পারেন। এখানে কিছু সাধারণ অপারেশনগুলি কীভাবে সম্পাদন করবেন তার একটি গাইড দেওয়া হল:
একটি স্ট্রিংয়ে প্যাটার্ন খোঁজা
use regex::Regex;
fn main() {
let re = Regex::new(r"^\d{4}-\d{2}-\d{2}$").unwrap();
let date = "2023-04-15";
println!("টেক্সটটি কি তারিখের প্যাটার্নের সাথে মিলে? {}", re.is_match(date));
// আউটপুট: টেক্সটটি কি তারিখের প্যাটার্নের সাথে মিলে? true
}
খোঁজ এবং মিলের ডাটা প্রাপ্তি
use regex::Regex;
fn main() {
let text = "Rust 2023, C++ 2022, Python 2021";
let re = Regex::new(r"\b(\w+)\s(\d{4})").unwrap();
for cap in re.captures_iter(text) {
println!("ভাষা: {}, বছর: {}", &cap[1], &cap[2]);
}
// আউটপুট:
// ভাষা: Rust, বছর: 2023
// ভাষা: C++, বছর: 2022
// ভাষা: Python, বছর: 2021
}
টেক্সট প্রতিস্থাপন
use regex::Regex;
fn main() {
let re = Regex::new(r"\b(\w+)\s(\d{4})").unwrap();
let text = "Rust 2023, C++ 2022, Python 2021";
let replaced = re.replace_all(text, "$1 was updated in $2");
println!("আপডেটেড টেক্সট: {}", replaced);
// আউটপুট: আপডেটেড টেক্সট: Rust was updated in 2023, C++ was updated in 2022, Python was updated in 2021
}
একটি রেজেক্স ব্যবহার করে টেক্সট বিভক্তি করা
use regex::Regex;
fn main() {
let re = Regex::new(r"\W+").unwrap(); // যেকোনো অ-শব্দাংশ চরিত্রে বিভাজিত
let text = "Rust-C++-Python-Go";
let fields: Vec<&str> = re.split(text).collect();
for field in fields {
println!("ভাষা: {}", field);
}
// আউটপুট:
// ভাষা: Rust
// ভাষা: C++
// ভাষা: Python
// ভাষা: Go
}
এই উদাহরণগুলি Rustে নিয়মিত প্রকাশের সাথে কাজ শুরু করার জন্য একটি প্রাথমিক গাইড প্রদান করে। আপনার প্রয়োজনীয়তা যত জটিল হয়, regex
ক্রেট জটিল প্যাটার্ন মিলন এবং টেক্সট পরিচালনা কাজে বিপুল ফাংশনালিটি অফার করে।