// include the latest version of the regex crate in your Cargo.toml
extern crate regex;
use regex::Regex;
fn main() {
let regex = Regex::new(r"^").unwrap();
let string = "<?php
namespace App\\Jobs\\Library\\Domain;
use Illuminate\\Bus\\Queueable;
use App\\Services\\YorLinkService;
use Illuminate\\Queue\\SerializesModels;
use Illuminate\\Queue\\InteractsWithQueue;
use Illuminate\\Contracts\\Queue\\ShouldQueue;
use Illuminate\\Foundation\\Bus\\Dispatchable;
class AddDomainLink implements ShouldQueue
{
use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
protected string $link_id;
protected string $domain_id;
protected string $path;
protected YorLinkService $yorLinkService;
/**
* Create a new job instance.
*
* @param $link_id
* @param $domain_id
* @param $path
*/
public function __construct(string $link_id, string $domain_id, string $path)
{
$this->yorLinkService = new YorLinkService;
$this->link_id = $link_id;
$this->domain_id = $domain_id;
$this->path = $path;
}
/**
* @param $yorLinkService
*/
public function setYorLinkServiceMock($yorLinkService)
{
$this->yorLinkService = $yorLinkService;
}
/**
* Execute the job.
*
* @return void
*/
public function handle()
{
$this->yorLinkService->createLink([
'link_id' => $this->link_id,
'domain_id' => $this->domain_id,
'path' => $this->path
]);
}
}
";
// result will be a tuple containing the start and end indices for the first match in the string
let result = regex.captures(string);
let (start, end) = match result {
Some((s, e)) => (s, e),
None => {
// ...
}
};
println!("{}", &string[start, end]);
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Rust, please visit: https://docs.rs/regex/latest/regex/