$s = <<< TXT
4000000002877308焦焦焦(1381111111).htm
4000000003485620肖(13810000000).htm
40000000081王王(15210222222).htm
4000000010104465盛盛盛(1518888888).htm
TXT;$ar = preg_split("/[\r\n]+/", $s);
foreach($ar as $r) {
  preg_match("/\d+([^(]+)\((\d+)/", $r, $reg);
  $sql = "insert into tbl_name (name, tel) values ('$reg[1]', '$reg[2]')";
  //插入语句
}

解决方案 »

  1.   

    把这所有的文件.都写入一个字符串.
    $str = "4000000002877308焦焦焦(1381111111).htm4000000003485620肖(13810000000).htm40000000081王王(15210222222).htm4000000010104465盛盛盛(1518888888).htm";
    preg_match_all('/([\d]+)([\x{4e00}-\x{9fa5}]+)\(([\d]+)\)/u',$str,$arr);
    print_r($arr);中文要是16进制的 也就是UTF-8格式 .
    测试是正常的.谢谢
      

  2.   


    大致思路就是这样,只是关于读取文件的操作应该是$hanler = opendir(目录);
    while($cur = readdir($handler))
     {
       preg_match("/\d+([^(]+)\((\d+)/", $cur, $reg);
       $sql = "insert into tbl_name (name, tel) values ('$reg[1]', '$reg[2]')";
       
      }