@rnacanvas/dot-bracket
v1.2.0
Published
Work with dot-bracket notation
Downloads
385
Readme
Installation
With npm:
npm install @rnacanvas/dot-bracketUsage
All exports of this package can be accessed as named imports.
// an example import
import { parseDotBracketFASTA } from '@rnacanvas/dot-bracket';function parseDotBracketFASTA()
Parses a string in dot-bracket FASTA format (e.g., the text contents of a dot-bracket FASTA file).
// a dot-bracket FASTA string
var s = (
'>Structure 1\n'
+ 'AAAGGGGAAAACCCCAAA\n'
+ '...((((....))))...'
);
var parsed = parseDotBracketFASTA(s);
parsed.name; // "Structure 1"
parsed.sequence; // "AAAGGGGAAAACCCCAAA"
parsed.dotBracket; // "...((((....))))..."All common newline encodings are supported
(i.e., \n, \r and \r\n).
The name line may be omitted.
var s = (
'AAAGGGGAAAACCCCAAA\n'
+ '...((((....))))...'
);
var parsed = parseDotBracketFASTA(s);
parsed.name; // undefined
parsed.sequence; // "AAAGGGGAAAACCCCAAA"
parsed.dotBracket; // "...((((....))))..."Any delta-G value trailing the dot-bracket notation will be omitted.
(Anything trailing the dot-bracket notation will be omitted.)
// has a delta-G value after its dot-bracket notation
var s = (
'>Structure 1\n'
+ 'AAAGGGGAAAACCCCAAA\n'
+ '...((((....))))... (-6.90)'
);
var parsed = parseDotBracketFASTA(s);
parsed.name; // "Structure 1"
parsed.sequence; // "AAAGGGGAAAACCCCAAA"
parsed.dotBracket; // "...((((....))))..."Dot-bracket notation may be a different length than the sequence.
// sequence is longer than dot-bracket notation
var s = (
'>Structure 1\n'
+ 'AAAGGAAAACCCCAAA\n'
+ '...((....))..'
);
var parsed = parseDotBracketFASTA(s);
parsed.name; // "Structure 1"
parsed.sequence; // "AAAGGAAAACCCCAAA"
parsed.dotBracket; // "...((....)).."Pseudoknot characters (e.g., [ ], { } and < >) are also allowed in dot-bracket notation.
var s = (
'>Pseudoknots\n'
+ 'AUGCAUGCAUGCAUGCA\n'
+ '.(.).[.].{.}.<.>.'
);
var parsed = parseDotBracketFASTA(s);
parsed.name; // "Structure 1"
parsed.sequence; // "AUGCAUGCAUGCAUGCA"
parsed.dotBracket; // ".(.).[.].{.}.<.>."