示例文本:
1. Medium Size +CA $33.00
2. Small Size -CA $4.00
我希望使用
preg_match
结果只是“中尺寸”或“小尺寸”
因此正则表达式应该检测“-”或“+”符号,并只提供文本输出而不包含价格/货币
尝试过
(\S+)
(\S+\s+)
此正则表达式应提取第一个字段 (
1.
) 和最后两个由空格分隔的字段 (+CA $33.00
) 之间的标题:
/^\S+ (.+) \S+ \S+$/
要一次捕获所有标题,请使用
preg_match_all()
和 m
标志:
<?php
$txt = '1. Medium Size +CA $33.00
2. Small Size -CA $4.00
3. Extra-Large Size -CA $44.00';
preg_match_all('/^\S+ (.+) \S+ \S+$/m', $txt, $m);
print_r($m[1]);