2019-08-21地址數(shù)據(jù)處理

問題背景:

有一堆地址數(shù)據(jù),要從地址數(shù)據(jù)中抽取號(hào)、幢、棟之前的數(shù)字,并把數(shù)字對(duì)應(yīng)的號(hào)、幢、棟標(biāo)出來

問題解決:

初步思路:

這里的問題其實(shí)就是把字符串里的數(shù)字提取出來,再找到數(shù)字后面對(duì)應(yīng)的號(hào)幢棟,使用c#,步驟如下:
1、利用正則提取數(shù)字,遍歷得到數(shù)字列表
2、根據(jù)數(shù)字列表數(shù)字的位置遍歷字符串,將字符串分割為0-第一個(gè)數(shù)字,第一個(gè)數(shù)字之后的值-第2個(gè)數(shù)字,
3、根據(jù)遍歷得到的數(shù)字列表和字符串列表判斷數(shù)字對(duì)應(yīng)的是號(hào)幢棟,然后進(jìn)行輸出

初步思路的問題:

實(shí)際的數(shù)字表示有單純的數(shù)字表示,也有類似1-2-2這一類的數(shù)字,顯然,這類數(shù)字不能被分割,在碰到這個(gè)問題之后,首先想到的方法是遍歷數(shù)字,看數(shù)字前后是否有‘-’,如果有,則進(jìn)行連接,但實(shí)際處理邏輯十分復(fù)雜,遂放棄;后觀察地址數(shù)據(jù)發(fā)現(xiàn),'-'只會(huì)出現(xiàn)在數(shù)字中間,沒有出現(xiàn)在中文字符之間,而數(shù)字與數(shù)字區(qū)分必然有中文,因此,想到把中文替換為特殊的符號(hào)‘&’,然后用此符號(hào)進(jìn)行字符串的分割,由此得到改進(jìn)思路

改進(jìn)思路

1、利用正則替換字符串中文為‘&’
2、利用‘&’分割字符串
3、判斷分割后的列表是否包含數(shù)字,如包含數(shù)字,則將此加入數(shù)字列表
4、進(jìn)行初步思路的第2、3步

done!
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 官網(wǎng) 中文版本 好的網(wǎng)站 Content-type: text/htmlBASH Section: User ...
    不排版閱讀 4,716評(píng)論 0 5
  • """禿子養(yǎng)成記""" 1.什么是字符串 字符串是Python內(nèi)置的一種容器型數(shù)據(jù)類型,不可變、有序;將單引號(hào)或者...
    QiuXian閱讀 418評(píng)論 0 0
  • 1.字符串 三個(gè)引號(hào)中字符串會(huì)保持傳入的格式 連接字符串使用‘+’號(hào),重復(fù)輸出字符串‘*’號(hào) 數(shù)字轉(zhuǎn)換為字符串 s...
    lony荼靡閱讀 789評(píng)論 0 0
  • 1. SQLite數(shù)據(jù)庫的特點(diǎn): SQLite是一款輕量級(jí)的嵌入式數(shù)據(jù)庫(用于移動(dòng)端) 處理數(shù)據(jù)的速度, 比MyS...
    by小杰閱讀 1,515評(píng)論 0 5
  • 捉摸不透的天氣,不知道是不是因?yàn)槲覀冞@些貴人的到來,這幾天時(shí)不時(shí)來一場雨。洗好的衣服剛剛曬出去,課還沒聽完呢,...
    滔媽閱讀 371評(píng)論 0 0

友情鏈接更多精彩內(nèi)容