Например,
cmn_writeProfileItem(1,"AXIS_DIST",319.2761477779271)
Я хочу извлечь только 319.2761477, формула, которую я пробовал, найдет только 1 в текстовой строке.
1 ответ
Чтобы вернуть первое нецелое число в строке, вы можете использовать FILTERXML
с xPath
который отфильтровывает недесятичные числа:
=FILTERXML("<t><s>" &SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A1,"(",","),")",","),",","</s><s>")&"</s></t>","//s[floor(number(.)) != number(.) and number(.)=number(.)]")
Это вернет все число, а не только до семи десятичных знаков.
создать xml
:
"<t><s>" &SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A1,"(",","),")",","),",","</s><s>")&"</s></t>"
аргумент xpath
"//s[floor(number(.)) != number(.) and number(.)=number(.)]"
Если вы действительно хотите, чтобы значение было усечено до седьмого знака после запятой, вам также потребуется выполнить некоторые математические функции.