有这样一个rtf或word文件,内容如下: DATE=6/2/2004                       TIME=2:16:50 PM
PART NAME  : 61B
REV NUMBER : 
SER NUMBER : 
STATS COUNT : 1
 
DIM RND1= ROUNDNESS OF CYLINDER DAZHU  UNITS=MM
AX NOMINAL   +TOL    -TOL    MEAS    MAX      MIN     DEV    OUTTOL 
M   0.0000  0.0254  0.0000  0.0168  0.0081  -0.0087  0.0168  0.0000 -----#---
 
DIM RND2= ROUNDNESS OF CYLINDER XIAOZHU  UNITS=MM
AX NOMINAL   +TOL    -TOL    MEAS    MAX      MIN     DEV    OUTTOL 
M   0.0000  0.0254  0.0000  0.0161  0.0078  -0.0083  0.0161  0.0000 -----#---
 
DIM RND3= ROUNDNESS OF CYLINDER 80YUAN  UNITS=MM
AX NOMINAL   +TOL    -TOL    MEAS    MAX      MIN     DEV    OUTTOL 
M   0.0000  0.0254  0.0000  0.0105  0.0053  -0.0052  0.0105  0.0000 ---#-----
 
DIM RND4= ROUNDNESS OF CYLINDER 50  UNITS=MM
AX NOMINAL   +TOL    -TOL    MEAS    MAX      MIN     DEV    OUTTOL 
M   0.0000  0.0254  0.0000  0.0176  0.0101  -0.0075  0.0176  0.0000 ------#--
 
DIM COAX1=COAXIALITY FROM CYLINDER DAZHU TO LINE LIN1 EXTENDLENGTH=0.0000  UNITS=
MMMM
AX NOMINAL   +TOL    -TOL    MEAS    MAX     MIN     DEV    OUTTOL 
M   0.0000  0.0254  0.0000  0.2800  0.1400  0.1265  0.2800  0.2546 -------->
 
DIM COAX2=COAXIALITY FROM CYLINDER 50 TO LINE LIN1 EXTENDLENGTH=0.0000  UNITS=MM
AX NOMINAL   +TOL    -TOL    MEAS    MAX     MIN     DEV    OUTTOL 
M   0.0000  0.0254  0.0000  0.1459  0.0730  0.0589  0.1459  0.1205 -------->
 
DIM COAX3=COAXIALITY FROM CYLINDER 80YUAN TO LINE LIN1 EXTENDLENGTH=0.0000  UNITS
=MM=MM
AX NOMINAL   +TOL    -TOL    MEAS    MAX     MIN     DEV    OUTTOL 
M   0.0000  0.0254  0.0000  0.0541  0.0270  0.0137  0.0541  0.0287 -------->
 
DIM PERP1= PERPENDICULARITY OF CYLINDER DAZHU TO PLANE DIMIAN EXTENDLENGTH=0.0000
  UNITS=MM  UNITS=MM
AX NOMINAL   +TOL    -TOL    MEAS    MAX     MIN     DEV    OUTTOL 
M   0.0000  0.0254  0.0000  0.0298  0.0149  0.0149  0.0298  0.0044 -------->
 
DIM PERP2= PERPENDICULARITY OF CYLINDER XIAOZHU TO PLANE DIMIAN EXTENDLENGTH=0.00
00  UNITS=MM00  UNITS=MM
AX NOMINAL   +TOL    -TOL    MEAS    MAX     MIN     DEV    OUTTOL 
M   0.0000  0.0254  0.0000  0.0161  0.0081  0.0081  0.0161  0.0000 -----#---
 
DIM DIST1= 3D DISTANCE FROM PLANE PINGMIAN TO PLANE DIMIAN, NO_RADIUS  UNITS=MM
AX  NOMINAL   +TOL    -TOL    MEAS      MAX      MIN     DEV    OUTTOL 
M   80.1491  0.0254  0.0254  80.1504  80.2122  80.0303  0.0012  0.0000 ----#----
 
DIM DIST2= 2D DISTANCE FROM CYLINDER DAZHU TO CYLINDER XIAOZHU     (CENTER TO CEN
TER), NO_RADIUS  UNITS=MMTER), NO_RADIUS  UNITS=MM
AX  NOMINAL   +TOL    -TOL    MEAS      MAX      MIN      DEV    OUTTOL 
M   97.0000  0.0254  0.0254  96.9728  96.9728  96.9728  -0.0272  0.0018 <--------
 
DIM LOC5= LOCATION OF POINT PNT2  UNITS=MM
AX  NOMINAL    +TOL    -TOL     MEAS      MAX       MIN      DEV    OUTTOL 
X   159.2848  0.0000  0.0000  159.2971  159.2971  159.2971  0.0123  0.0123 -------->
Y    -2.3630  0.0000  0.0000   -2.3568   -2.3568   -2.3568  0.0062  0.0062 -------->
Z     0.0000  0.0000  0.0000    0.0000    0.0000    0.0000  0.0000  0.0000 ----#----
 
PART NUMBER=61B    DATE=6/2/2004     TIME=2:16:53 PM           PAGE#=2
DIM LOC6= LOCATION OF POINT DAZHUJIAO  UNITS=MM
AX NOMINAL   +TOL    -TOL    MEAS      MAX      MIN      DEV    OUTTOL 
X   0.0000  0.0000  0.0000  -0.0013  -0.0013  -0.0013  -0.0013  0.0013 <--------
Y   0.0000  0.0000  0.0000   0.0025   0.0025   0.0025   0.0025  0.0025 -------->
Z   0.0000  0.0000  0.0000   0.0000   0.0000   0.0000   0.0000  0.0000 ----#----
 
DIM LOC7= LOCATION OF POINT PNT1  UNITS=MM
AX  NOMINAL    +TOL    -TOL     MEAS      MAX       MIN       DEV    OUTTOL 
X   -74.4133  0.0000  0.0000  -74.4089  -74.4089  -74.4089   0.0044  0.0044 -------->
Y    -1.0709  0.0000  0.0000   -1.0770   -1.0770   -1.0770  -0.0061  0.0061 <--------
Z     0.0000  0.0000  0.0000    0.0000    0.0000    0.0000   0.0000  0.0000 ----#----
 
DIM LOC8= LOCATION OF POINT DAZHUJIAO  UNITS=MM
AX NOMINAL   +TOL    -TOL    MEAS      MAX      MIN      DEV    OUTTOL 
X   0.0000  0.0000  0.0000  -0.0013  -0.0013  -0.0013  -0.0013  0.0013 <--------
Y   0.0000  0.0000  0.0000   0.0025   0.0025   0.0025   0.0025  0.0025 -------->
Z   0.0000  0.0000  0.0000   0.0000   0.0000   0.0000   0.0000  0.0000 ----#----
 
DIM LOC1= TRUE POSITION OF POINT PNT2  UNITS=MM
AX  NOMINAL     MEAS     +TOL    -TOL   BONUS       DEV         DEVANG    OUTTOL 
X   159.2848  159.2984                                0.0137                    
Y    -2.3630   -2.3594                                0.0036                    
Z     0.0000    0.0000                                0.0000                    
D1                                             POINT DAZHUJIAO AT RFS            
TP       RFS            0.0254          0.0000        0.0283     14.8912  0.0029 -------->
 
DIM LOC2= TRUE POSITION OF POINT PNT1  UNITS=MM
AX  NOMINAL     MEAS     +TOL    -TOL   BONUS       DEV         DEVANG    OUTTOL 
X   -74.4133  -74.4076                                0.0057                    
Y    -1.0709   -1.0796                               -0.0087                    
Z     0.0000    0.0000                                0.0000                    
D1                                             POINT DAZHUJIAO AT RFS            
TP       RFS            0.0254          0.0000        0.0208    -56.5900  0.0000 -------#-
 
DIM COAX4=COAXIALITY FROM CYLINDER DAZHU TO LINE LIN2 EXTENDLENGTH=0.0000  UNITS=
MMMM
AX NOMINAL   +TOL    -TOL    MEAS    MAX     MIN     DEV    OUTTOL 
M   0.0000  0.0254  0.0000  0.2796  0.1398  0.1245  0.2796  0.2542 -------->
 
DIM FLAT1= FLATNESS OF PLANE DIMIAN  UNITS=MM
AX NOMINAL   +TOL    -TOL    MEAS    MAX      MIN     DEV    OUTTOL 
M   0.0000  0.0254  0.0000  0.0064  0.0034  -0.0031  0.0064  0.0000 --#------
 
DIM COAX5=COAXIALITY FROM CYLINDER DAZHU TO LINE LIN4 EXTENDLENGTH=0.0000  UNITS=
MMMM
AX NOMINAL   +TOL    -TOL    MEAS    MAX     MIN     DEV    OUTTOL 
M   0.0000  0.0254  0.0000  0.2800  0.1400  0.1265  0.2800  0.2546 -------->
 
DIM COAX8=COAXIALITY FROM CYLINDER 50 TO LINE LIN4 EXTENDLENGTH=0.0000  UNITS=MM
AX NOMINAL   +TOL    -TOL    MEAS    MAX     MIN     DEV    OUTTOL 
M   0.0000  0.0254  0.0000  0.1459  0.0730  0.0589  0.1459  0.1205 -------->
 
DIM COAX6=COAXIALITY FROM CYLINDER 80YUAN TO LINE LIN4 EXTENDLENGTH=0.0000  UNITS
=MM=MM
AX NOMINAL   +TOL    -TOL    MEAS    MAX     MIN     DEV    OUTTOL 
M   0.0000  0.0254  0.0000  0.0541  0.0270  0.0137  0.0541  0.0287 -------->
 
DIM LOC3= TRUE POSITION OF CYLINDER XIAOKONG1  USE AXIS=AVERAGE  REF LENGTH=0.000
0  UNITS=MM0  UNITS=MM
AX  NOMINAL     MEAS     +TOL    -TOL   BONUS       DEV        DEVANG    OUTTOL 
X   -74.4136  -74.4129                               0.0007                    
Y    -1.0704   -1.0618                               0.0087                    
DF   10.2637   10.2454  0.0000  0.0000  0.0000      -0.0183              0.0183 <--------
D1  124.0000  124.0754  0.0000  0.0000         CYLINDER DAZHU AT RFS            
TP       MMC            0.0254          0.0000       0.0174     85.0768  0.0000 ------#--
 
                             END OF MEASUREMENT FOR
       PN=61B             DWG=             SN=
     TOTAL # OF MEAS =28     # OUT OF TOL =19     # OF HOURS =00:14:35
这个是三维坐标测量仪测量到的坐标文件,现在想把其中(2个DIM之间)的数据作为一组,然后继续细分为:AX NOMINAL   +TOL    -TOL    MEAS    MAX     MIN     DEV    OUTTOL 几个字段,最后进数据库中,winform和webform都可以。 
大哥大姐给出个谋划个策,谢谢啊!!!

解决方案 »

  1.   

    文本读取,用split按空格拆分为string数组,注意一下换行
    把数组付给datarow
      

  2.   

    用正则捕捉到两个DIM之间的数据,然后再用正则捕捉你想要的字段值...DIM[\s\S]+?(?<=(\--\#)|(\--\>))
      

  3.   

    你正好三行一组固定的数据,
    然后用split按空格拆分数据就行
      

  4.   

    DIM COAX6=COAXIALITY FROM CYLINDER 80YUAN TO LINE LIN4 EXTENDLENGTH=0.0000  UNITS 
    =MM=MM 
    AX NOMINAL   +TOL    -TOL    MEAS    MAX     MIN     DEV    OUTTOL  
    M   0.0000  0.0254  0.0000  0.0541  0.0270  0.0137  0.0541  0.0287 --------> 
      
    和DIM LOC3= TRUE POSITION OF CYLINDER XIAOKONG1  USE AXIS=AVERAGE  REF LENGTH=0.000 
    0  UNITS=MM0  UNITS=MM 
    AX  NOMINAL     MEAS     +TOL    -TOL   BONUS       DEV        DEVANG    OUTTOL  
    X   -74.4136  -74.4129                               0.0007                     
    Y    -1.0704   -1.0618                               0.0087                     
    DF   10.2637   10.2454  0.0000  0.0000  0.0000      -0.0183              0.0183  <-------- 
    D1  124.0000  124.0754  0.0000  0.0000         CYLINDER DAZHU AT RFS             
    TP       MMC            0.0254          0.0000       0.0174     85.0768  0.0000 ------#-- 行数不一样的,用空格不行啊,你看这么多空格呢
    我觉的liuyun1987的很好,能再详细点么,如果有空的话。
    正则好难啊,但是使用真方便啊
    谢谢各位了。
      

  5.   

    使用DIM进行split,然后再进行细分