Open topic with navigation

Verify & Fix Input |
R←{X}⎕VFI Y |

Y must be a simple character scalar or vector. X is optional. If present, X must be a simple character scalar or vector. R is a nested vector of length two whose first item is a simple logical vector and whose second item is a simple numeric vector of the same length as the first item of R.

Y is the character representation of a series of numeric constants. If X is omitted, adjacent numeric strings are separated by one or more blanks. Leading and trailing blanks and separating blanks in excess of one are redundant and ignored. If X is present, X specifies one or more alternative separating characters. Blanks in leading and trailing positions in Y and between numeric strings separated also by the character(s) in X are redundant and ignored. Leading, trailing and adjacent occurrences of the character(s) in X are not redundant. The character 0 is implied in Y before a leading character, after a trailing character, and between each adjacent pair of characters specified by X.

The length of the items of R is the same as the number of identifiable strings (or implied strings) in Y separated by blank or the value of X. An element of the first item of R is 1 where the corresponding string in Y is a valid numeric representation, or 0 otherwise. An element of the second item of R is the numeric value of the corresponding string in Y if it is a valid numeric representation, or 0 otherwise.

#### Examples

⎕VFI '2 -2 ¯2'
1 0 1 2 0 ¯2
⎕VFI '12.1 1E1 1A1 ¯10'
1 1 0 1 12.1 10 0 ¯10
⊃(//⎕VFI'12.1 1E1 1A1 ¯10')
12.1 10 ¯10
','⎕VFI'3.9,2.4,,76,'
1 1 1 1 1 3.9 2.4 0 76 0
'⋄'⎕VFI'1 ⋄ 2 3 ⋄ 4 '
1 0 1 1 0 4
(⍬ ⍬)≡⎕VFI''
1