Я новичок в f # и хочу использовать его для изменения формата строки логики высказываний:
Я хочу заменить «aX» на строку «next (a)», где «a» является элементом [a..z], а «X» является заглавной буквой X ».
Все источники, которые я нашел, например, https://www.dotnetperls.com/replace-fs либо заменить строку другой строкой,
let s = "a & b & c & aX & !bX"
let sReplaced = s.Replace("X", "next()") // val it : string = "a & b & c & anext() & !bnext()"
, в этом случае вы не можете поместить оригинальный символ между ними или если они работают символьно, как, например.
let sArray = s.ToCharArray()
for c in 0 .. sArray.Length - 1 do
if sArray.[c] = 'X' then
sArray.[c-2] <- '('
sArray.[c] <- ')'
let sArrayResult = new string(sArray) // val sArrayResult : string = "a & b & c &(a) & (b)"
разрешить только ту же длину для выходной строки.
"a & b & c & aX &! BX"
следует заменить на
"a & b & c & next (a) &! Next (b)"
Есть ли какой-нибудь удобный способ справиться с этой проблемой? Заранее спасибо.