使用正则表达式排除部分字符串

Exclude part of string using Regular expression

我有一个地址

New street 4 
462005 MG Road 
Tel .: 02281 / 93-1-212  
Fax .: 02681 / 93-1148

我想要 "Tel" 之前的字符串并删除 "Tel"

之后的任何内容
New street 4 
462005 MG Road 

我试过的是

(?!^Tel$)(^.*$)

但它只给出了第一行。 新街 4

如何在没有任何 PHP 函数的情况下使用正则表达式实现此目的。

这应该可以解决问题

替换

([\s\S]*?)(Tel[\s\S]*)


确保激活单行模式:

(?s).*?(?=Tel)

演示:https://regex101.com/r/dX7kU7/1

编辑:
一点改进:这个更新版本应该更健壮一点,并在新行以 Tel 开头时停止,即当街道名称包含子字符串 Tel: https://regex101.com/r/dX7kU7/2

原创! )))

if (false !== $pos = strpos($str, 'Tel')) {
    $str = substr($str, 0, $pos);
}