In [1]:
"A"
Out[1]:
In [2]:
"ACGT"
Out[2]:
In [3]:
st = "ACGT"
Out[3]:
In [4]:
length(st) # getting the length of a string
Out[4]:
In [5]:
"" # empty string (epsilon)
Out[5]:
In [6]:
length("")
Out[6]:
In [7]:
"ACGT"[rand(1:4)] # generating a random nucleotide
Out[7]:
In [8]:
"ACGT"[rand(1:4)] # repeated invocations might yield different nucleotides
Out[8]:
In [9]:
"ACGT"[rand(1:4)] # repeated invocations might yield different nucleotides
Out[9]:
In [10]:
"ACGT"[rand(1:4)] # repeated invocations might yield different nucleotides
Out[10]:
In [11]:
"ACGT"[rand(1:4)] # repeated invocations might yield different nucleotides
Out[11]:
In [12]:
# now I'll make a random nucleotide string by concatenating random nucleotides
st = join(["ACGT"[rand(1:4)] for _ in 1:40])
Out[12]:
In [13]:
st[2:4] # substring from position 2 up to (not including) position 4
Out[13]:
In Julia, the lowest offset is 1! Unlike C, Java, Python, Go. But like R.
Also, ranges like 2:4
are inclusive at both ends. 2:4
asks for the part of the string from offset 2 through offset 4.
In [14]:
st[1:3] # prefix of length 3
Out[14]:
In [15]:
st[length(st)-2:length(st)] # suffix of length 3
Out[15]:
In [16]:
st[end-2:end] # another way of getting the suffix of length 3
Out[16]:
In [17]:
st1, st2 = "CAT", "ATAC"
Out[17]:
In [18]:
st1
Out[18]:
In [19]:
st2
Out[19]:
In [20]:
st1 * st2 # concatenation of 2 strings
Out[20]: