我正在尝试匹配像' sdb-iof-pool 1008.56M 884K'使用此正则表达式:Incorrect syntax near '('. Expecting ID.
我的c代码如下:
$total = count($_FILES['photo_file']['name']);
// Loop through each file
for($i=0; $i<$total; $i++) {
//Get the temp file path
$tmpFilePath = $_FILES['photo_file']['tmp_name'][$i];
//Make sure we have a filepath
if ($tmpFilePath != ""){
//Setup our new file path
$newFilePath = "./uploadFiles/" . $_FILES['photo_file']['name'][$i];
//Upload the file into the temp dir
if(move_uploaded_file($tmpFilePath, $newFilePath)) {
//Handle other code here
}
}
}
即使像this这样的工具似乎确认正则表达式工作正常,我的程序返回: &#34;无法匹配正则表达式&#39; ^(。)([\ s] +)([ - +]?[0-9] 。?[0-9] +) ([K | M | G | T | P] {1})([\ S] +) - ([K([+] [0-9]的 [0-9] +??)| 。M | G | T | P] {1})()$&#39; on&#39; sdb-iof-pool 1008.56M 884K&#39;:不匹配&#34;
答案 0 :(得分:0)
使用实用程序&#34; grep&#34;经过多次试验和错误后选项&#34; -E&#34;为了扩展正则表达式并通过阅读该实用程序的手册,我怀疑字符类[\ s]是罪魁祸首。 POSIX语法无法识别字符类[\ s]。必须使用[:space:]。