Я пытаюсь извлечь часть строки, используя номера индексов. При наличииSPARQL string RANGE
"OEIUFHWOIEFWNFOPQWJFHQWOIHFEB..."
и мне нужна строка из 5:10 (FHWOIE)
я узнал, что это не представляется возможным с помощью Regex, как возвращает только логические и не группы. Однако мне не удалось найти выбор региона по строкам через позиции. Теперь мне интересно, есть ли они?
я узнал, что это частично возможно через ...
BIND(REPLACE(?sequence, '^.{100}', "") AS ?sequencestrip1)
но не
BIND(REPLACE(?sequence, '^.{?start}', "") AS ?sequencestrip1)
Я думаю, что это делает это для тех, кто интересуется:
BIND(REPLACE(?sequence, "^.{"+str(?start)+"}", "") AS ?sequencestrip1)
и, конечно же, удалить область, в которой вы заинтересованы
BIND(REPLACE(?region, ".{"+str(strlen(?region)-10)+"}$", "") AS ?upstream)
На StackOverflow вы можете ответить на свои вопросы. Если вы найдете решение, вы можете отправить его в качестве ответа. Это помогает сделать вещи более ясными для тех, кто прибывает позже. –