<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 225  文章 - 98  trackbacks - 0
    <2012年9月>
    2627282930311
    2345678
    9101112131415
    16171819202122
    23242526272829
    30123456

    隨筆分類

    相冊

    報表工具廠商們

    搜索

    •  

    最新評論

    閱讀排行榜


    使用FineReport經常會遇到在設計中要取兩個字符之間的數據或者文本的問題。在此貢獻一些公式給大家。

    寫過代碼的都知道想到的是用substr或者split函數來做,但是仔細研究一下就會發現substr只能解決取從第幾個字符開始的n個字符,而split是返回的用分隔符分割的字符串,沒有選擇性的截取,后來找了一下,發現原來有這種算法,例子中說的是在excel中的方法,fr兼容excel所以這一點不用擔心。

    有時需要從包含分隔符號的字符串中提取子字符串,例如Excel工作表的某列中包含類似“200-GH11301-11TB5”的文本字符串,該字符串被兩個相同的分隔符號“-”分成三部分,且每部分的字符數不固定,現在需要提取其中的第2部分內容“GH11301"。這時可以使用下面的公式,假如原字符串位于A1單元格中,在B1單元格中輸入如下公式:

    =MID(LEFT(A1,FIND("`",SUBSTITUTE(A1,"-","`",2))-1),FIND("`",SUBSTITUTE(A1,"-","`",1))+1,LEN(A1))

    公式說明:本例用SUBSTITUTE函數將兩個分隔符號“-”替換為“`”,“`”符號位于數字“1”鍵的左側,也可改為字符串中沒有出現的其他特殊符號。然后用FIND函數查找第二個“`”出現的位置并用LEFT函數去掉第二個“`”后面的部分,最后用MID函數提取所需內容。由于MID函數的第三個參數“LEN(A1)”大于所提取文本的字符數,因而本公式適用于各部分長度不固定的字符串。

          也可使用下面的公式:

    =TRIM(MID(SUBSTITUTE(A1,"-",REPT(" ",LEN(A1))),LEN(A1),LEN(A1)))

    公式說明:REPT(" ",LEN(A1))產生一個與原字符串長度相同的空格字符串,用SUBSTITUTE函數將其替換各分隔符號,這樣所需提取文本的前后就都包含了與原字符串長度相同的空格字符串,再用MID函數進行截取,截取后的字符串前后都包含一些空格,最后用TRIM函數去掉這些空格即得到所需文本。

    本例原字符串中有2個分隔符號,第一部分有3個字符,第二部分有7個字符,第三部分有5個字符,字符串總長度LEN(A1)=17,MID函數截取后“GH11301”的前面就有4(3+17-17+1)個空格,后面就有6(17-4-7)個空格。
        
        如果字符串中包含更多的分隔符號,如“1130-80-F030305-5TB1-T(40)”,要提取各部分內容,可以將公式改為:

    提取第一部分:

    =TRIM(MID(SUBSTITUTE(A1,"-",REPT(" ",LEN(A1))),1,LEN(A1)))

    或者直接用公式:

    =LEFT(A1,FIND("-",A1)-1)

    提取其他部分,如第3部分“F030305”:

    =TRIM(MID(SUBSTITUTE(A1,"-",REPT(" ",LEN(A1))),2*LEN(A1),LEN(A1)))

    本例中提取字符串中的第3部分,公式中用紅色標識的數字為“2”,如果是第N部分,則為N-1。



    了解Java報表工具就從這里開始
    posted on 2012-09-06 23:46 season 閱讀(930) 評論(0)  編輯  收藏 所屬分類: Java報表—技術知識
    主站蜘蛛池模板: 亚洲三级视频在线观看| 亚洲国产精品久久久天堂| 亚洲愉拍一区二区三区| 男男AV纯肉无码免费播放无码| 亚洲s码欧洲m码吹潮| 免费看黄视频网站| 麻豆狠色伊人亚洲综合网站| eeuss影院免费92242部| 自拍偷自拍亚洲精品情侣| baoyu122.永久免费视频| 久久夜色精品国产亚洲AV动态图| 亚洲精品中文字幕无乱码麻豆| 国拍在线精品视频免费观看| 亚洲一区二区三区高清在线观看| 女人18毛片水真多免费看| 久久亚洲AV成人无码国产电影 | 免费视频成人国产精品网站| 亚洲情a成黄在线观看| 中文字幕无码日韩专区免费| 久久久亚洲裙底偷窥综合| 免费看黄视频网站| 污视频网站在线观看免费| 亚洲AV无码国产精品麻豆天美| 深夜a级毛片免费视频| 亚洲色无码一区二区三区| 99久9在线|免费| 亚洲欧美自偷自拍另类视| 亚洲国产精品成人| 久久久久久国产精品免费免费男同| 亚洲大香伊人蕉在人依线| 91在线老王精品免费播放| 亚洲国产熟亚洲女视频| 亚洲精品无码久久不卡| 午夜免费福利小电影| 精品亚洲国产成人av| 国产AV无码专区亚洲A∨毛片| 国产精品免费精品自在线观看| 亚洲久本草在线中文字幕| 在线观看免费无码专区| 亚洲人成网网址在线看| 亚洲国产一级在线观看|