作为一个例子,我将使用这一行:
/*! jQuery v1.7.1 jquery.com | jquery.org/license */
我如何使用preg_match查找并隔离$version
变量1.7.1
?
考虑到该字符串中的版本号将动态更改,恕不另行通知。
所以用简单的英语听起来像是:
find the term 'jQuery v' and grab the following characters up until a space is found
答案 0 :(得分:1)
这是一个交互式的php会话:
php > $haystack = "/*! jQuery v1.7.1 jquery.com | jquery.org/license */";
php > preg_match('/jQuery v([^ ]*)/', $haystack, $matches);
php > print_r($matches);
Array
(
[0] => jQuery v1.7.1
[1] => 1.7.1
)
如您所见,第一个匹配组包含您的版本号。
答案 1 :(得分:1)
$str = '/*! jQuery v1.7.1 jquery.com | jquery.org/license */';
if(preg_match('/jQuery v(\S+)/', $str, $m)) {
$ver = $m[1];
}
答案 2 :(得分:0)
preg_match('|jQuery v([^\s]+)|', $str, $m);
$version = $m[1];