看板 RegExp 關於我們 聯絡資訊
我有一個字串 http://www.tudou.com/programs/view/Bic3TWWQrRY/ 我想要取得最後一個Bic3TWWQrRY 我的想法是 /\/[\w+]*\// 可是最後會取到/Bic3TWWQrRY/ 要怎麼把左右兩個/拿掉阿 謝謝回答 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.117.39.194
LPH66:括起來然後取 \1 (詳細方法請看你所使用的Regexp引擎說明) 06/24 16:58
我後來改用這個 /[\/|\/\/](\w+)*/ 會取到 Result 1 1. Result 2 1. www Result 3 1. programs Result 4 1. view Result 5 1. Bic3TWWQrRY Result 6 1. 我比較有問題的是第二的www.tudou.com 為什麼只取到www就斷掉了 難道只剩下用 [\/|\/\/]([a-zA-Z.0-9]+)* 才可以,感覺好差 不知道有沒有更好的做法 謝謝回答 ※ 編輯: knives 來自: 122.117.39.194 (06/24 17:28)
smlboby:最簡單的,就把你取出來的字串再replace掉'/'就好了 06/24 17:29
evernever:/\/([^\/]+)\// 06/24 20:09
PurpleCrow:/(\w+)\/$/ 06/24 22:40
PurpleCrow:因為你用(\w+)當然取不到. @ @ 06/24 22:42
PurpleCrow:([a-zA-Z.0-9]+) 可用 ([\w.]+)取代 06/24 22:49
blackkaku:/(?<=\/)[^\/]+(?=\/$)/ 06/24 23:39
PurpleCrow:全都直接比對,比較不會出錯 06/26 16:06
knives:感謝各位的回答 06/27 16:11
qwertmn:用split("/")直接切割字串就好了阿XD 08/21 11:37
twoseven:(?<=/)\w+(?=/$) 10/11 01:39