我有一个很大的段落,随机点会出现这样的字符串,我想从中提取:
PID: 45678437在'PID‘之前有一个空格,在数字之后,数字可以是6-10个字符的长度。
我实际上只需要数字,但想检查它前面是PID:因为可能有其他大数在段落中。
:)
发布于 2013-09-04 00:46:18
/ PID: (\d{6,10})/这将匹配一个空格,然后是PID:,然后是一个空格,后面是6-10位数字,然后捕获这些数字。
我鼓励你学习正则表达式。它们是一个强大的工具。
发布于 2013-09-04 00:46:34
试试这个:
$pattern = '~(?<=\sPID:\s)[0-9]{6,10}(?=\s)~';
preg_match($pattern, $text, $match);
echo $match[0];其想法是使用查找只检查字符之前和之后的数字,而不匹配他们。
发布于 2013-09-04 00:47:53
<?php
$string = "PID: 4567895";
preg_match("/PID:\s(\d{6,10})/", $string, $result);
$value = $result[0];
echo "The value is: {$value}";
?>https://stackoverflow.com/questions/18603665
复制相似问题