带反斜杠的正则表达式在 preg_match_all 中不起作用

Regex with backslashes not working in preg_match_all

我正在尝试获取细分名称(有时可以包含空格),但我一直收到错误

Warning: Invalid argument supplied for foreach()

我知道我当前的正则表达式不支持空格,我也需要帮助,但我认为反斜杠在 preg_match_all

中破坏了它
$line = "WORK ORDERS\Subdivision Subdivision\Sec. 64751401_123 street dr.pdf"
$ptn2 = "/\[a-zA-Z]+\/";
preg_match_all($ptn2, $line, $matches2, PREG_SET_ORDER);

添加了 \h 以匹配水平空格。

$ptn2 = '~\[a-zA-Z\h]+\~';
preg_match_all($ptn2, $line, $matches2, PREG_SET_ORDER);

DEMO