我有字符串“我的家”和正则表达式:例如$ reg =“/ hom /”。我很难找到如何在比赛结束后获得文字(直到结尾),在这种情况下我正在寻找'e'。
另一个例子:
$string = 'soulful';
$reg = '/soul/';
=>>>我需要'满满的'。 提前谢谢。
答案 0 :(得分:3)
您可以使用:
$str = 'soulful';
$reg = '/soul(\w+)/';
if ( preg_match($reg, $str, $m) )
print_r ($m);
Array
(
[0] => soulful
[1] => ful
)
答案 1 :(得分:1)
只需更改正则表达式即可使用包含(
和)
的群组:
$string = 'soulful';
$regex = '/soul(.+)/';
preg_match($regex, $string, $matches);
var_dump($matches);
输出:
array(2) {
[0]=> string(7) "soulful"
[1]=> string(3) "ful"
}
答案 2 :(得分:0)
您可以展开正则表达式以匹配原始正则表达式之后的所有文本,即:
$string = 'soulful';
$regex = '/soul(.*)/';
if ( preg_match($regex, $string, $match) ) {
echo 'The text after soul is: '.$match[1].PHP_EOL;
}