我正在用 PHP 编写程序,我需要找到介于两组符号之间的数据,并将其转换为字符串。例如
$main = "Hello, everyone, my name is (-Jack-)"
$string = regex_function('(-', $main) #should return "Jack"
我如何使用正则表达式函数或其他东西获得该输出
我正在用 PHP 编写程序,我需要找到介于两组符号之间的数据,并将其转换为字符串。例如
$main = "Hello, everyone, my name is (-Jack-)"
$string = regex_function('(-', $main) #should return "Jack"
我如何使用正则表达式函数或其他东西获得该输出
尝试这个 :
$main = 'Hello, everyone, my name is (-Jack-)';
preg_match_all('/\(\-(?P<name>.*)\-\)/', $main, $matches);
echo "<pre>";
print_r($matches);
echo $matches['name'][0];
该函数被称为preg_match_all()
。
$main = "Hello, everyone, my name is (-Jack-)";
preg_match_all('/\(\-(?P<name>\w+)\-\)/', $main, $string);
print_r( $string );
键盘上的示例输出。
参考@Prasanth 的评论;这是一个更好的正则表达式。
$main = "Hello, everyone, my name is (-Jack stuff-) some more text (-John stuff-)";
preg_match_all('/\(\-(?P<name>[\s\w]+)\-\)/', $main, $string);
print_r( $string );
键盘链接。