嗨我有这样的文件清单
1443 F 001.tif
1731 001.tif
1731 A 001.tif
1731 E 001.tif
1731 I 001.tif
ARELLANO GALVEZ 001.tif
AVILA 001.tif
berra morales jose 001.tif
berra morales jose 002.tif
CASTRO 001.tif
我想要抓住以数字开头的文档,接下来有一个LETTER并以另一个字符结束,之后我想在数组中进行匹配。
例如“1443 F 001.tif”必须匹配。
我希望像
这样的比赛$encontrados[0] = 1443
$encontrados[1] = F
$encontrados[2] = 001.tiff
$pattern = '/^[\d]+[\w]?+(*)?/';
$var = preg_match_all($pattern, $documento, $encontrados);
但我的正则表达式不起作用,任何线索?
答案 0 :(得分:2)
你的正则表达式格式不正确。
尝试:
$pattern = '/^[\d]+ [a-zA-Z] .+$/';
注意:此模式匹配以数字开头的字符串,空格,后跟字母(大写或小写),空格,以任何其他字符结尾
答案 1 :(得分:1)
尝试模式
'/^(\d+)\s*([a-zA-Z])\s*(.*)/'
为你的任务。
\d
将匹配您的号码(此处不需要方括号),[a-zA-Z]
一封信(您可以通过撰写[a-zA-Z]?
将其设为可选)和.*
匹配其余的部分。请注意,\s*
会占用其间的任何空格。