basic_functions.ml (589B)
1 let remove_file_extension file_name = 2 let fin_period_pos = String.rindex file_name '.' in 3 String.sub file_name 0 fin_period_pos 4 5 let count_prefix char data = 6 let rec go idx = 7 if String.length data > idx && data.[idx] = char then go (idx + 1) else idx 8 in 9 go 0 10 11 (* Assumes length >= 3*) 12 let has_sl_postfix s = 13 let len = String.length s in 14 s.[len - 1] = 'l' && s.[len - 2] = 's' && s.[len - 3] = '.' 15 16 let prepend prefix s = prefix ^ s 17 18 let arr_to_string arr = 19 let rec go acc idx = 20 if idx >= Array.length arr then acc else go (acc ^ arr.(idx)) (idx + 1) 21 in 22 go "" 0