在php中使用正则表达式在两个其他字符串之间找到一个字符串?

时间:2014-09-23 09:59:08

标签: php regex string substring

php中是否有一个函数来搜索字符串并根据它在两个已定义的字符集之间找到一个子字符串?

我正在尝试使用php脚本搜索一些文件并从中获取一个字符串。

我需要的字符串是一个URL,每个文件都有一个字符串,里面有一个不同的URL

/A << /URI (https://www.website/custom_ url_per_file)
/S /URI >>    //an actual linebreak in the code

我在foreach循环中打开了所有文件,那么如何在2个字符串$ a和$ b之间提取url?

$a = /A << /URI
$b = /S /URI >>  

1 个答案:

答案 0 :(得分:1)

<?php

$string = '/A << /URI (https://www.website/custom_ url_per_file)
/S /URI >>    //an actual linebreak in the code';

preg_match('#/A << /URI \(([^\)]+)\)\s+\/S /URI >>#', $string, $matches);

print_r($matches);

?>

将导致:

Array
(
[0] => /A << /URI (https://www.website/custom_ url_per_file)
/S /URI >>
[1] => https://www.website/custom_ url_per_file
)