如何拆出字串中的數值並排序
通常情形下,一列資料都是整體參與排序,但如果資料是由字母跟序號組合在一起,比如名字加序號的一列資料:
Mike105
Rose11
Rose1
Rose5
Mike6
現在需要先按名字排序,再按序號排序。比如Mike6要排在Mike105前面,期望的結果如下:
Mike6
Mike105
Rose1
Rose5
Rose11
這個需求看似簡單,但真要考慮實現它的步驟時,就會發現還真不是那麼容易。就算是檔案不夠大的情形,也需要先按行讀取檔案,將資料拆分為兩列後,先按名字列排序,當名字列同時,再根據序號列區域性排。而這種複合排序,一般沒有現成的函式,完全需要自己實現。另外,考慮檔案特別大的情形時,還得使用檔案快取來進行排序,這些程式碼實現起來都特別繁瑣。
這種情況,如果有集算器就方便多了,用SPL實現只要一句話:
file("d:/data.txt").import().sort( )
集算器指令碼SPL不光能輕鬆排序結構化的文字,對它做分組,過濾也都非常方便,甚至還能關聯計算多個檔案。具體內容可以參考:
集算器是進行檔案資料來源處理的專業工具,可以方便地進行 TXT、Excel、Xml、Json、CSV、ini 等各種檔案資料的混合計算、入庫以及匯出等工作。桌面級計算工具,即裝即用,配置簡單,除錯功能完善,可設定斷點、單步執行,每步執行結果都可檢視。語法簡單,符合人的自然思維,比其他高階開發語言更簡單。請參閱
SPL也能很方便地嵌入到JAVA應用,可參考:
具體使用方法可參考:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69900830/viewspace-2691651/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- SQL 如何拆分字串中的數值後排序SQL字串排序
- 如何從字串文字中拆解出多個數值並計算字串
- mysql 字串型別的數值欄位按照數值的大小進行排序MySql字串型別排序
- MySQL字串中抽取數值的方法MySql字串
- 生成隨機字串並排序隨機字串排序
- SQL Server 中將字串按數字排序SQLServer字串排序
- C#按字串中的數字排序問題C#字串排序
- 統計字串中數字個數,並將數字字串形式輸出字串
- mysql相同數值排序MySql排序
- JZ-053-表示數值的字串字串
- 劍指Offer 表示數值的字串字串
- js面試題-找出字串中的數字,並替換為*JS面試題字串
- 【Kmp求字串字首在字串出現的次數】51nod 1277 字串中的最大值KMP字串
- sort按照數值大小排序排序
- 對Boost庫中的數值到字串的轉換的改進 (轉)字串
- 《劍指offer》:[54]表示數值的字串字串
- Python中如何進行字串計數?Python字串
- Android筆記:獲取url或uri字串中的引數值Android筆記字串
- js數值排序中冒泡演算法的4種簡單實現JS排序演算法
- 如何獲取字串中相同字元出現的次數字串字元
- 排序字串排序字串
- 劍指Offer系列之「表示數值的字串」字串
- 將數值轉換為字串的函式字串函式
- js如何判斷一個變數是否宣告並賦值JS變數賦值
- Python中如何將字串變成數字?Python字串
- JavaScript 字串轉換數值型別JavaScript字串型別
- Shell 程式設計 : 數值,字元,字串程式設計字元字串
- 如何判斷字串是否為合法數值、浮點、科學計數等格式字串
- 字串-簡單字串排序字串排序
- Python工作筆記-往dll中傳入char*型別的引數並且如何接收char*的值Python筆記型別
- js如何判斷陣列中是否存在指定的值並返回索引JS陣列索引
- linux 中如何判斷變數是否為數值Linux變數
- 統計一個字串中的單詞的個數,並列印各個單詞字串
- 巧取字串中的數字字串
- PHP二維陣列切割為字串並去除重複的值PHP陣列字串
- 字串、數值 等型別的相互 安全轉換字串型別
- 第六章 生成隨機字串並排序 練習隨機字串排序
- ant如何替換JAVA程式碼中的String變數中的值?Java變數