我想寫一個正則表達式,它將檢查IP是否有效或不。表面問題當我給256值,它仍然匹配2,和REG將存儲值作爲1,因爲模式匹配。tcl正則表達式匹配ip地址在單行
set ip "256.256.255.1"
set reg [regexp -all{^([1-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]).([1-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]).([1-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]).([1-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])} $ip match ]
puts $reg
我不會推薦在這種情況下使用正則表達式。使用正則表達式實際上會降低性能。簽出https://stackoverflow.com/questions/15587213/regex-for-a-number-greater-than-x-and-less-than-y – Tejus