[問題] 字串判斷與擷取

看板C_and_CPP (C/C++)作者 (我一定要準時畢業!!)時間16年前 (2010/05/04 02:25), 編輯推噓4(405)
留言9則, 4人參與, 最新討論串1/1
遇到的問題: (題意請描述清楚) 字串: A_DT passenger_NN plane_NN has_VBZ crashed_VBN shortly_RB after_IN take-off_NN from_IN Kyrgyzstan_NNP 's_POS capital_NN 我想要擷取_後面是 NN、VBZ、VBN、NNP的字串,其餘的刪掉 然後擷取後的部分只要留下_前面的字串 希望得到的正確結果: passenger plane has crashed take-off Kyrgyzstan capital 開發平台: (例: VC++ or gcc/g++ or Dev-C++, Windows or Linux) VC++ OR Dev-C++ 想請教大家 這樣的問題有什麼函式及方式可以參考呢? 謝謝大家回答~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.117.75.133 ※ 編輯: CutieJim 來自: 122.117.75.133 (05/04 02:26)

05/04 03:21, , 1F
strcmp() & strtok()
05/04 03:21, 1F

05/04 08:38, , 2F
用strtok吧
05/04 08:38, 2F

05/04 10:47, , 3F
先用strtok用空白分隔截出各段字串, 再用 strncmp 找最後
05/04 10:47, 3F

05/04 10:49, , 4F
幾個字母是不是 _NN, _XXX, 再用 strncpy 把字串從頭到N長
05/04 10:49, 4F

05/04 10:49, , 5F
度的字串截取出來
05/04 10:49, 5F

05/04 10:51, , 6F
strncmp的 n建議用strlen算出,這樣程式彈性較大
05/04 10:51, 6F

05/04 10:51, , 7F
strncpy的 n也是一樣
05/04 10:51, 7F

05/04 11:42, , 8F
稍微寫了一下 參考看看 http://codepad.org/Qwweo1IG
05/04 11:42, 8F

05/04 17:38, , 9F
感謝各位的說明,也謝謝law1009提供的code參考
05/04 17:38, 9F
文章代碼(AID): #1BtnKidr (C_and_CPP)
文章代碼(AID): #1BtnKidr (C_and_CPP)