Мне нужно напечатать 10 символов до и после строки "john", всякий раз, когда встречается "john".Даже если в следующей строке печатается половина букв, она все равно должна печатать 10 символов до и после.
Я пытался использовать функцию .contains и индекс строки, но проблема возникает, когда я вводю файлкак это:
Hello my name is jo
hn and i work for bla bla.
Что я пробовал:
(ns clojure-assignment.problem6
(:use [clojure.string :only [index-of]]))
(defn String_manipulation []
(def str1 (slurp "string.txt"))
(println str1)
(def check (.contains str1 "john"))
(if (= check true)
(def index (index-of str1 "john")))
(println (subs str1 (- index 11) index))
(println (subs str1 (+ index 4) (+ index 5 10))))
(String_manipulation)
Я ожидаю, что вывод будет выводить значения 10 символов до и после заданной строки, и это также должно работать, если есть строкаконец.